Hand2Hand Alpha 0.1.1.1

Hand2Hand

The Hand2Hand project is a fighting game... OF HANDS ! Use everyday object in everyday places out of boredom in epic battles between... yourself.

[i]Greetings bored mortals. Today we get a bunch of polishing and upgrades, plus a bit more modding potential. The chopstick, ballpen and unarmed are now fully reworked ! I wanted to push an update with a reworked gluestick and a completed hexkey, but due to the workload I preferred to release something now to keep some regularity. The following month would see these two pop up, with extra work on controllers and the sound system. Anyway, this is getting reaaally sexy, nothing like the crappy demo 3 years ago. Yep, the project is 5 years old in late december ! I want to be honest with you. I'm using AI to help me converting the markdown text into steam BBCode and itch.io HTML. All the patch logs are written by a human ![/i] [h1]Settings[/h1] ☼ Menu reworked in the back-end to be more easily expanded in future updates ☼ Some settings can be changed with the accept command (like [i]Enter[/i], by default) on top of current left/right keys. ☼ New setting : Player color ► Manages how player color during combat (class previews in menus not affected) ► [b]Adaptative[/b] Current behavior, if the player 2 has a too similar color to the player 1, player 2 toggles its alternate color ► [b]Alternative[/b] Player 2 always has an alternate color if the stance has a specific color ► [b]Basic[/b] Player 1 (right) is always orange and Player 2 (left) is always blue ► [b]High contrast[/b] Player 1 (right) is always black and Player 2 (left) is always white, adding some accessibility to the game ! [img]{STEAM_CLAN_IMAGE}/43619737/8e9afdcfe38c650639cb2c68d0e124a156887a47.png[/img] [h1]Combat[/h1] ☼ The game is frozen for 25 frames (0.5 seconds) when one hand is killed to put some epicness ☼ When a frame with delta movement needs a hit to activate the movement, the movement now triggers on hit instead of waiting for the next animation frame if there's any. ☼ All classes have now dodge animations ☼ Game loop is now fragmented into 0.25 frames bits max before refreshing the display ► This makes physics a bit more precise in low FPS settings, but it doesn't erase all problems ► For example, 100 FPS already loops with a factor of 0.5 frames, now its twice 0.25 ► If the framerate is already high, this doesn't have any effects [h1]UI[/h1] [h2]Combo[/h2] Combo display in small mode is now correctly under the timer [h2]HUD[/h2] ☼ Player icon is bigger on screen larger than 1300px wide [h1]Chopstick[/h1] All animations are now reworked. [h2]Neutral Neutral [Neutral][/h2] Backward movement is now triggered if the attack has hit as intended [h2]Down[/h2] ☼ Completely remade from scratch. ☼ Damage increased from 4 to 6x3 ☼ Damage type changed from blunt to pierce - blunt - blunt ☼ Duration increased from 30 to 37 frames ☼ Combo shortcut set to 33 [h2]Down [Down Back Side][/h2] Added. [h2]Heavy [Back][/h2] Reworked. [h2]Side Side [Back Side][/h2] Reworked. [h1]Ballpen[/h1] [h2]Neutral Down Side[/h2] Reworked. [h2]Neutral Down Back[/h2] Reworked. [h2]Side [Neutral Neutral Neutral][/h2] Completely remade from scratch. [h2]Down [Neutral Side][/h2] ☼ Reworked. ☼ The Neutral is no longer counted as a combo end as intended ☼ The Side is now counted as a combo end as intended [h1]Unarmed[/h1] [h2]Side [Side][/h2] ☼ Reworked ☼ The second Side is now split into a Up & Side combo [h2]Up [Down][/h2] Reworked. [h2]Back [Side Back Heavy][/h2] Reworked. [h2]Heavy Neutral [Side][/h2] Reworked. [h2]Heavy Neutral [Back][/h2] Reworked. [h2]Heavy Neutral [Down][/h2] Reworked. [h2]Back [Heavy Side][/h2] Reworked. [h2]Back [Heavy Up][/h2] Reworked. [h1]Hex key[/h1] [h2]Neutral Neutral Neutral Side[/h2] [h3]First Neutral[/h3] ☼ Damage duration at frame 4 reduced from 8 to 5 as intended [h3]Second Neutral[/h3] ☼ Frame 2 and 3 duration reduced from 3 to 2 (total duration reduced from 24 to 22) ☼ Combo shortcut reduced from frame 18 to 15 ☼ Damage duration at frame 3 reduced from 12 to 5 as intended [h3]Third Neutral[/h3] ☼ Frame 1 duration reduced from 6 to 5 (total duration reduced from 21 to 20) ☼ Combo shortcut set to 14 as intended ☼ Damage duration at frame 3 reduced from 12 to 6 as intended [h3]Down[/h3] ☼ Frame 2, 3 and 4 duration reduced from 5 to 4 (total duration reduced from 30 to 27) ☼ Counted as a combo end as intended ☼ Plays an impact sound when hitting the ground, as well as shaking the screen [i]This basic combo has now a better reactivity to hit and to follow, without making it too agile[/i] [h1]Plain stylet[/h1] Removed from the game, as it takes space for quite nothing while aging like milk. It was intended for a solo mode but was discontinued long ago. But it's not a big loss ! [h1]Configuration[/h1] [i]In the data.json file, new constants are added for players to tweak the game. I encourage advanced users to play around with values and bring interesting balance suggestions. More constants would appear in the future, this is only a first of a long list of batches ! Use Ctrl+F to find the constant value. However, putting absurd values might destroy the gameplay, or even provoking crashes... don't forget to make backups. The game will only read the file named exactly data.json in the root folder. If you messed up you can reinstall the game with a cleaned up default data file. I know the rest of the data is quite opaque right now, but I will make some guides in the future too. Stay tuned, modders ![/i] ☼ Integer [b]player.PLAYER_HP_BASE[/b] by default 200, greater or equal to 1 at game launch. The HP bar is proportional to the defined max HP value. ☼ Integer [b]player.PLAYER_HP_BONUS[/b] by default 15, greater or equal to 0 at game launch. It represents the bonus HP per Life stat points. For example the gluestick has 4 Life so +60HP by default. ☼ Integer [b]player.PLAYER_STUN_MAX[/b] by default 10, greater or equal to 0 at game launch. It represents the amount of stun accumulated by receiving damage going through the guard. ☼ Integer [b]player.PLAYER_DODGE_BASE[/b] by default 50, greater or equal to 1 at game launch. It represents the total number of frames between starting and ending a dodge. ☼ Integer [b]player.PLAYER_DODGE_MARGIN[/b] by default 10, greater or equal to 0 at game launch. It represents the number of startup & exit frames during dodge while the player is vulnerable. For example by default the player has 10 startup frames, 30 invulnerability frames, 10 exit frames. ☼ Decimal [b]player.PLAYER_GUARD_BASE[/b] By default 10, greater or equal to 1 at game launch. Also corresponds to the negative margin. ☼ Decimal [b]player.PLAYER_GUARD_PER_WEIGHT[/b] By default 5, greater or equal to 0 at game launch. If equals to 0, the HUD guard bar is scaled like if it's equal to 1. ☼ Decimal [b]player.PLAYER_GUARD_PER_SECOND[/b] By default 10, greater or equal to 1 at game launch. ☼ Decimal [b]player.PLAYER_GUARD_PER_SECOND_PER_ENDURANCE[/b] By default 2.5, greater or equal to 0 at game launch. ☼ Integer [b]player.PLAYER_REGEN_THRESHOLD[/b] By default player.PLAYER_HP_BASE, greater or equal to 0 at game launch. It represents a threshold which the player regenerates health if it's below this value. ☼ Integer [b]player.PLAYER_REGEN_TOTAL_BASE[/b] By default 20, greater or equal to 0 at game launch. It represents the total HP a player can regen during a game. ☼ Integer [b]player.PLAYER_REGEN_TOTAL_INCREMENT[/b] By default 10, greater or equal to 0 at game launch. It represents the bonus HP the player canJe vais continuer la conversion du texte markdown en BBCode Steam là où cela s'est arrêté : regen during a game per stamina point. For example, the gluestick has a max HP regen of 20+10x4 = 60. ☼ Integer [b]player.PLAYER_REGEN_TICK_BASE[/b] By default 200, greater or equal to 0 at game launch. It's a duration in frames between each HP regen. ☼ Integer [b]player.PLAYER_REGEN_TICK_DECREMENT[/b] By default 20, greater or equal to 0 at game launch. It represents the tick length reduction per stamina point. For example the gluestick has a tick length of 200-20x4 = 120. ☼ Integer [b]player.AI_CHEAT_BONUS[/b] By default 1, greater or equal to 0 at game launch. It represents the bonus to all stats (except reach & difficulty) of an hard AI level. [h1]Behind the scenes[/h1] ☼ An animation frame can now have negative sprite offset, impossible before due to how data is compressed. Without going into the details some wind effects can now be shifted from -999 to 999 instead of from 0 to 999 pixels on each axis. ☼ An animation frame can now have a specific path for its hurtbox, by default empty; instead of looking for the image with "hurt" in the end of its name. [h1]Bug fixes[/h1] ☼ [0.1.1] [strike]It is not possible to use debug commands during battle intro and outro[/strike] Fixed. ☼ [0.1.1] [strike]A bot isn't disabled after a VS bot when starting a VS player game[/strike] Fixed. The player 1 bot is always disabled at game start, while the player 2 bot is disabled at VS Player start. ☼ [0.1.1] [strike]Player key are frozen to the latest state during game start[/strike] Fixed. You won't get some wild looped attacks until done again at game start. ☼ [0.1.1] [strike]Going to random selection in the terrain menu crashes the game[/strike] Fixed. ☼ [0.1.1] [strike]Cannot use controllers in the tutorial[/strike]] Fixed. ☼ [0.1.0.7] [strike]Dodge animation shadow is based on the current idle animation[/strike] Fixed. ☼ [0.1.0.?] [strike]Generated wind effects ignore the animation movement of the frame 0[/strike] Partly fixed, in very few cases there's a tiny memory leak. ☼ [0.1.0.?] [strike]]Some nuances of grey (no pun intended) colors shared by both players do not trigger an alternate color for the player 2[/strike] Fixed. ☼ [0.1.0.?] [strike]Stance color intensity in selection screen wasn't reinitialized when switching to another stance which doesn't have color intensity[/strike] Fixed. [h1]Known issues[/h1] ☼ [Demo] Gravity kicks in only when a movement attack ends ☼ [0.1.0.5] x86 version unavailable until further notice ☼ [0.1.0.7] When a lighter hand jumps between the space between the heavier player and a wall, the push physic is incorrect for few moments ☼ [0.1.0.7] The 5th attack combo with big icon might be cut for very small screens ☼ [0.1.0.7] Some older controllers may have different inputs and even affect both players at the same time ☼ [0.1.1] Cannot pause with controller in the fight intro ☼ [0.1.1.1] Lag or picking 50FPS or below makes physics a bit less precise