Home Artists Posts Import Register

Downloads

Content

New additions to game include damage indicators, though synchronization is not yet done for them, synchronization for camera on-death kicks, low hitpoints/death/revive beep sounds though. Also more fixes and improvements for hint-like/response options/polls/window objects.


Interfaces

- Made it so dialogue bubble arrow won't disappear whenever response options are shown on right from it;

- Made it so poll options no longer catch key events once first vote was casted. Revoting not requires Ctrl key to be held;

- Made it so bubble text isn't moving down when player is crouching due to holding Ctrl key required to change poll options;

- Updated arrow logic to point towards player rather than center of bubble text groups;

- Fixed issue with poll timer not being shown due to "Hold Ctrl to change vote" text;

- Made it possible to revote with Ctrl + 1/2/3... rather than just Ctrl + Click;

- Fixed "Too far" poll caption when player is frozen or unconscious;

- Normalized floating bubble text offsets for players of unusual scale;

- Fixed an overlap resolve logic bug for case when bubble text collides with bubble text + response options/poll;

- Added update for visible windows whenever spectated ragdoll is changed;

- Added possibility for host to not see bubble text/hint-like objects that are configured to not be seen by host.


Multiplayer

- Fixed a bug which caused server to not realize its' reliable messages were delivered because server was not analyzing any unreliable messages but the most recent one. Bug was essentially common for low update rate servers and was causing infinite loading and repeated sending of already sent and delivery confirmed messages;

- Optimization for reliable message arrival confirmation reports;

- Fixed an issue causing response options/polls objects to not be properly synced unless option total count changes;

- Implemented conditional visibility for bubble text/hint-like objects based on observer ragdolls and connections;

- Implemented conditional visibility for window objects based on observer ragdolls and connections (previously it was only connection-dependant);

- Fixed a bug causing cursor to be hidden when player spectates another player or watching replay;

- Added synchronization of modality for windows;

- Fixed an issue causing text/options of bubble text/hint-like objects to not be sent to clients that are intended to see them but are currently in spectator mode;

- Fixed an issue letting spectating player to press option buttons intended for player that is controlling spectated player;

- Made it impossible for players to spoof network packets to press options that aren't visible to them;

- Implemented personal virtual controllers for each connected player on server-side. These could be used for free cameras to work properly and in sync, especially since server only sends objects which players can see;

- Implemented soft position correction for server-side and client-side virtual controllers (for free camera spectating);

- Made it possible for players to spectate their ragdoll for some time when character can no longer be revived (for example when head was lost);

- Made it so post-death camera is still attached to place where player's ragdoll was or still is;

- Fixed camera behavior inconsistencies on server and on client when player dies;

- Implemented beep sounds synchronization;

- Made beep sounds quieter in replay mode;

- Made it so beep sound playbacks are cancelled when replay mode starts/stops;

- Implemented synchronization for camera impulses/kicks (they happen on death);

- Added support for vision duration limitation after player dies;

- Fixed a bug causing window creation/deletion and chat message commands to be sent as part of replays even though they were marked as out-of-replay reliable messages;

- Fixed an issue causing players to not see anything instantly if they die to BNG explosions;

- Fixed an issue causing players to not receive some kinds of particle effect spawn messages if their ragdoll gets completely destroyed;

- Made it so character voices are not scaled in replay modes when replay playback speed changes;

- Fixed an issue causing frozen player's server-side version of camera to not follow player's cursor position, especially bad if frozen character is sliding somewhere fast enough;

- Made it so recorded grenade scroll sound is played in replay mode as well;

- Made it so grenade scroll sound is not played if player tried to scroll grenade while in replay mode.


Level Editor

- Made it possible to disallow weapon & grenade drops for specific players even if they press drop weapon/item button (DROP_NEVER, DROP_WHEN_INTENDED_ONLY, DROP_WHEN_CAN_NOT_BE_REVIVED and DROP_ALWAYS are supported now);

- Made it so holding digit keys isn't causing lags due to empty clipboard pasting attempts that trigger module scans;

- Made it so host's presudo-connection was accessible through scripting when accessing host-controlled ragdoll;

- Fixed an issue causing singleplayer world instances to not know UID of player;

- Added option "do not synchronize for spectators" for windows and hint-like objects, though it is only available via scripting for now;

- Fixed a bug causing BNG deaths not triggering character death callbacks;

- Fixed a bug causing deaths at the very bottom of maps not switching control to next singleplayer character;

- Fixed an issue causing damage indicator overlays as well as camera following for ragdoll could stay when entering Level Editor.


Gameplay

- Added low hitpoints and death beep sounds;

- Made it so beep sounds are canceled when players are revived and revive sound is played (also played when healing after being in dying state);

- Implemented random camera impulses/kicks on deaths (they can be also triggered with level scripting);

- Limited low hitpoints beep sound to ~1000 hitpoints, so players with lots of hitpoints in custom maps won't hear beeping all the time. Decreased death beep volume if player is being constantly revived and dying again;

- Reworked pinging so it could work when players are dead too (though it is disabled by default, but probably could be re-enabled for competitive modes later);

- Made it so weapons held by eliminated characters aren't shaking constantly;

- Started implementing incoming damage indicators. Texture and shape for it is generated programmatically so rounding, cut angle of inner part as well as color could be made quite customizable at some point in future;

- Implemented dither effect for screen edge gradients for incoming damage and low health indication (because otherwise it had a very poor step effect due to low opacity and monitors supporting just 256 gradations of red);

- Optimized incoming damage indicators when there is no damage to show;

- Fixed incoming damage directions across all possible damage sources;

- Implemented incoming damage indicators merging by damage UIDs and direction so it works good on case of damage like fire/liquids/beam attacks;

- Fixed an issue making it possible for players with maximum handicap level to heal themselves indefinitely if they happen to still have arms and legs;

- Made screen being filled with red color (mostly near the edges) proportionally to hitpoints of player and dying state. This effect goes away if player reaches maximum health allowed by handicap, though smallest scratch would make screen go red with intensity relative to original hitpoints amount. Hopefully it would bring it towards balance between less distracting and informative;

- Fixed a bug causing camera shaking/impulses/kicks to reveal where directional incoming damage indicator gradients end (they are just polygons after all);

- Fixed a bug causing camera to stuck in case of axis-aligned impulses;

- Implemented red fill effect near the screen edges for case when player's character dies but is still being followed by camera;

- Fixed a bug causing damage indication overlays to not work when camera is zoomed in/out;

- Made it so damage indication overlays disappear slowly once controlled player is already dead.


Sounds

- Remade death beep sound since one used in PB2 has wave inconsistency due to fixed-duration pitch change. Also made it quieter after first few seconds so there is less desire from players to switch it off in settings when playing in DM-like modes;

- Revive sound, which essentially is just a high pitched "low health" sound;

- Made few other sounds that I can't really use anywhere yet.


Star Defenders 2D

- Network snapshot size optimization (and brand new kinds of synchronization bugs that never happen in PB3);

- Bug & crash fixes;

- Few more rare crystal kinds.

Comments

Anonymous

Nice, and have you ever played the system shock remake? Pretty good game.

UnrealCrash

Haven't played System Shock series at all, actually. Have you played original version before playing remake?

Anonymous

Hey Eric! Working on some pretty interesting stuff this time. Loving the Damage Indicators. Was wondering when I'd get to see them. The only question I can think of is will it be possible to reduce or disable the red damage overlay? Some may find it too much currently I personally don't really care but definitely something to consider. Will the Fire Damage rate be customizable? Felt kinda fast in the gameplay. Think it would definitely be good if it set people who get directly hit or stand in it for too long on fire which kills them at a semi-slow pace. ( Diving could put it out? ) Just an idea. Glad to finally see the BNG in the game. On top of that love that you are expanding a little more on Radiation. Noticed the effect was not that visible in the gameplay. Could be because of the bright weather in the background. I do suggest maybe adding something more than just a green effect. Maybe some sort of radiation clicking sound and or static within the area of effect of the radiation. Would be a nice detail. I'm only suggesting this part as I used to play a lot of STALKER about 2 years ago or so. Radiation in that game is quite a big deal. That's all I got for you this month. Like always keep up the amazing work.