25.05.2025:
    - Different threshold for sword can damage when it's accelerating and not. This will allow us to make enemy-walls that cannot be surpass without destroying them.
    - Sword fixes and cleanup.

19.05.2025:
    - Fixed bug with standing on enemies. There was a problem because we have code that disables collisions with enemies when we can hit them - because before we killed every enemy on hit and don't want to stamp upon him.
    - Fixed bug with constantly spawning lights on hit to MULTIPLE_HITS. That was because we was drawing lights on every sticky entity that followed blocker or SWORD_SIZE_REQUIRED. Now we check for sticky texture to be immortal - then we make light.

18.05.2025:
    - No move block.
    - Cleanups for light. Actually probably will rewrite how we init and store light, but there will be better time for that. When we'll rewrite entity system for examle.

16.05.2025:
    - Fixed bug that hit booster could be killed with player projectile.
    - Also there was separate bug that killed booster by explosion.

15.05.2025:
    - Removed rifle entity. Now shooting works just through sword.
    - Now sword rotates to shoot direction.
    - Made infinite slowmo on shift key.
    - Fixed hitmark scale bug.
    - Now hit boosters don't die on hit again.

14.05.2025:
    - Added hit boosters.
    - Changed gravity multiplier while velocity.y is greater than 10 so we don't fly that high.
    - Trying out that sword will always damage enemies, regardless of spin speed.
    - Fixed bug when we saved entity flags as u64, but loading as i32. Added to_u64 to my_libs.

12.05.2025:
    - Made that in big sword boost vertical velocity goes go zero, so we move horizontally.
    - Remade rifle. Now we don't need to go into rifle mode - we can just shoot from sword tip.

11.05.2025:
    - Movement improvements. Increased acceleration and made snapping to ground better.

10.05.2025:
    - Rifle controlling. We could move with that for now.

09.05.2025:
    - Movements improvements. Speed limits for more control and for cooler big sword activation.
    - Wall vertical boost for nicer movement.
    - Propellers reworked. Now they just keep player in claws (without spin requirement) before propeller ends. That at least gives us options to test some level ideas, whereas if player could leave them - that's just nothing new, because player will be able to gain vertical places (for example) with different things.

04.05.2025:
    - Movement reworked, big sword now enables for time on mouse button and gives speed boost. Need to make levels to see how that really should work.
    - Removed wall climbing for now. We'll see what we could add for vertical movement.
    - Made in-game log messages.

03.05.2025:
    - Movement almost reworked.

29.04.2025:
    - Lightmap debug view control improvements.
    - Added ability to have ground blocks as light on lightmap.

28.04.2025:
    - Fixed blending issue. Now lightmaps look as they should.

27.04.2025:
    - Light work, finally added ability to control light intencity by changing light opacity.
    - Debug options for full light and view only lightmaps.

26.04.2025:
    - Added dynamic lights to work with lightmaps.
    - Immediate outlines. Basic version for now, but will be useful later.
    - Fixed selection on paste entity. Before on paste we always added pasted thing to multiselected, but when we copy/paste only one entity we want pasted entity to become selected entity - and now it works that way.    

25.04.2025:
    - Light blending with real entities.

24.04.2025:
    - We finally know where we're going.
    - Baking now goes in portions (even for one texture!).
    - We're saving lightmaps to files now.

30.03.2025:
    - Sword work. Made handle for sword and how sword don't hit ground with it's base constantly.
    - Vulkakkakakn work.

27.03.2025:
    - Vulkan progress.
    - Experimented some with new big sword rotation. Made that on kill we give spin speed so it's easier to constantly spin while you killing shit.

26.03.2025:
    - Working on Vulkan integration.
    - Recently made that we NEED to hit enemy with sword and we don't have a 'immortality' while spinning - if enemy hits player body he will kill him, even if player spinning. That's a huge gamplay change and I think it's for the best. But of course we need to change many things for that to be verry good.
    - Following change of reduced player protection - made that big sword now spinning a lot slower than small one, but also big sword loses it's angular velocity almost immediately and that gives us great control. Also that's now look just as I wanted from beginning - so we could have these moments of player just made a discrete move and swing this sword.
    - Further improvements of new big sword spin. Don't actually know if that was improvements - i made that big sword keep really huge spin speed for some time after switching from small, but I may don't want that (if that's gonna be main tactic because it's safest). Maybe we want to go with more controllable thing and really require precise inputs. It's just hard to spin big sword, but with this keeping velocity things it's not really easier. Or maybe it is, we'll need to check this in gameplay.

19.03.2025:
    - Multiselect improvements.
    - Loading multiple levels and switching between them on TAB.
    - Camera now contains in every level context. That's just should be better and it's required for fast switching levels, because we don't cant camera to lose it's position and zoom on switch. Also now we switch current_level_context with separate function so we don't forget to setup camera and clear stuff if need.
    - With new multilevel loading worked on stability with multiselection, copy, undo etc. Now udno_actions contains in every level context.

18.03.2025:
    - Made that on multiselect moving we always move entity points.
    - Now we detect multiselected entities center and with that i made better positioning of pasted entities.
    - Multiselection copy/paste undo.    
    - HUGE Multiselection qol improvements.

17.03.2025:
    - HUGE finally fixed this collision issues with passing through ceiling. Also fixed strange collision handling on steep walls, where we were accumulating down velocity, but going up. That's all was because ground checker pushed us up even when something did not considered as ground. Passing through ceiling theoreticly still could happen, but we'll see. If it is then i'll just additionally check for ceiling raycast collision.... I've made that. Now no clipping should happen EVER.
    - Made that when player has 0 ammo - after 3 seconds he gets one. Now with that we should not be afraid to require shots.
    - Made alarm trail for projectiles that tells that this shit will kill us on touch.
    - Multiselect moving undo.
    - Multiselect deleting undo. Had to introduce a new level context called undo_level_context. That's a good thing, because that's exactly why i was making these level contexts (means that shoulda've been a good decision, but we'll see).
    - Multiselect copy/paste with that insane shit about veryfiying trigger connected ids.

16.03.2025:
    - Highlighting entities under cursor in editor.
    - Fixed shoot stoper line bug. 
    - Fixed long-gone vertices issues. This was because we actually did not used non 0.5 x pivot until now.
    - Made basic multiselection.
    - Made multiselect moving multiple entities on Shift key and excluding entities from multiselect if clicked on entity with Ctrl hold.
    - Moving entity points.

13.03.2025:
    - Fixed wide screen zoom.
    - Hacky-changed how replays work and made level with replay on other room to show how cool the game is.

12.03.2025:
    - Made button in inspector for triggering trigger in game.
    - Minor improvements of inspector ui.
    - Some more work on inspector macro.
    - Made RELEASE_BUILD so we can start game on first level. Also we have DEBUG_BUILD defined now. It's automaticly defined as 1 on release and debug build.
    - Now triggers can allow or forbid player shoot. Made that for first levels till shooting_practice.
    - Changed blockers texture.
    - Relax room and music.
    - Propeller how don't require player to jump and just push him off the ground.
    - Fixed problem with platforms and jump buffering. It was because wall jump buffers.
    - leha_explosive1 level.
    - Playtest.

11.03.2025:
    - A little rework of how we drag player around with debug key - not it's possible in pause in game. And we set velocity to zero. And player can't die while we dragging.
    - Fixed death instinct cooldown. It's was broken because how we checked if we need to start cooldown when enemy flying towards. Don't know why it broke, but now we just using thing that we already using to check if threat still active, so that's better. Now game harder though, will need to see how this will be going.
    - Air practice level.

10.03.2025:
    - Fixed bird trail emitters on spawn. (Including centipede segments trail on die).
    - Made delay for explosions.
    - Remade particles on player death.
    - Remade propeller particles. Now it's line and we spawn less.
    - Tried to make that explosion will cut rope, but we still very stupidly check if explosion collision so will look into that later.
    - Made smoke for explosions. Actually removed it later - that's too much for contiguous explosions.
    - Made that on alt key triggers draw lines to tracked and triggered.
    - Tried to fix trail emitter on jump shooters - did not understand what's the deal. Maybe there's actually no infinite spawn growth and it's just too much. 
    - Made that physics objects can now crush jump shooters if they don't stand on them.

09.03.2025:
    - Added spin progress ui at the top of the screen.
    - bombe level 'almost' finished. Only thing left it's some more enemies for pressure and testing.
    - Fixed projectile stuck in shoot blockers. Now it's just don't hit anymore if he hit more than 8 things.
    - Now all centipede segments explode at once. Without it we encounter weird stuff when some segments is in ground and just can't explode. 

08.03.2025:
    - Improved inspector ui macroses and replaced more inspector with them for less code size. 
    - Made property 'spin_sensitive' for propellers and made that in few levels. That's because recently i made that propellers push really good only when spin is on it's highest, but we need sensitive ones for spin stop training and on some places where we don't want player to climb up.
    - Now mouse is locked on window in editor again, but escape key releases mouse from that chains and another click in window captures mouse here forever.
    - Changed light flag usage. Now we don't add this dynamicly (for example on explosive enemy init) and rather this only serves purpose on loading. Like when we do actual light objects on levels and not when we add light to enemies in game. For that purpose we have light index. That is a problem because for example on explosive initing we add light flag, but on free explosvie should we removing light flag? What if it still has lights? That's a weird moment and we'll think on flags overall later.
    - Fixed newly occured bug with explosion light shadows. That's was because on clear_level_context I recently started to clearing all lights, even temp ones. But for temp lights we init it's size and make_shadows bool only in init_level_context. We'll work with lights later on full lights remake.
    - Inspector code size reduction progress.

07.03.2025:
    - Checked for hdr. We have that one!
    - Changed propeller spin acceleration. It somewhat breaks our stuff with spin stop on levels, but that could be better overall. We'll see.   
    - Maked that mouse in editor now could go off the window.
    - Fixed failed rifle sound and shake. That broke because I removed requirement for spin to activate rifle.
    - Fixed gpu memory leak on checkpoints. That was because on checkpoint trigger enter I did not cleared previous checkpoint level context. Then was a problem because we still has global player_data clear on clear_level_context, which obviously should not happen. So now we clear player data on enter_game_state. And then it gets copied to whatever value we copied that should be in player_data at the time.
    - Fixed rope spawning on any physics object bug.

06.03.2025:
    - Changed compiler to msvc. 
    - Fixed bug with screen positions buffer that occured as I switched compiler and was forced to rewrite static arrays usage.
    - Further increased accuracy of sword spin collision detection.
    - Fixed rope bug and changed a place where we spawn rope. There was a really strange moment where on entity copy i just used to set rope ids to -1. Probably was some shit about old context system.
    - Sound on sword size switching.

05.03.2025:
    - For jump shooter added hit sparks.
    - Stability for particles work. (Reduced amount of calls like get_particle_emitter()->thing).
    - Line trail cool shit.
    - More particles work.
    - Increased lights count and temp lights count so we don't have funny bugs where someone turns off the lights.

04.03.2025:
    - Huge particles work. Added debris, emitter trails for particles, collision for particles, some fixes and worked on game particles itself.

03.03.2025:
    - Fixed tires for walls aswell.
    - Ability for particles to have 'children' emitters that it will emit at one time. Made that for blood emitter.
    - Fixed crash when we couldn't get particle emitter. There was just that we don't handle null on emitter follow entity, but that is something we need to think about - if we could not get emitter because all slots are occupied means some entity could have invalid emitter index till the end of his life. I think we just eventually tweak emitters count so that just will not happen with normal gameplay. But crashes should not pass in any case. 
    - More particles work. Enemies hit, trails etc.
    - Pitch increasing on centipede contiguous projectile hit.

02.03.2025:
    - Further particles work. Added possibility for particles to fade color instead of scale.
    - Texture rendering for particles.
    - Line rendering for particles.
    - Removed hash table usage outside entities. (Because that's not a real hash table so collisions don't handled at all). Now for textures and sound we use just a linear search. Also added missing texture and missing sound.
    - Ability for particles to grow after birth.
    - Renamed textures_table and sounds_table to textures_array and sounds_array.

01.03.2025:
    - Particles rework almost completed. It finally works. 
    - Mistake in continuous sword collision detection with wrong direction fixed.
    - Added and tested constexpr. Will be a good thing.

26.02.2025:
    - Improved jump buffer. Now jump buffer detects presses only in air. That caused us problems with platforms on high speeds.

25.02.2025:
    - Made sword spin collisions more precise by decreasing min rotation amount allowed.
    - Centipede shit fixed. This was because we inited it multiple times and it spawned multiple times. That could never happen if we don't spawn anything only in game state, but i don't know if it's actuall ya good approach. It may be. Now we spawn on init only things for centipede and it causes many confusions. Maybe we should go off that.
    - Checkpoints fully fixed and works better than ever (Maybe there's still blocks disappear, but did not noticed that after other fixes).
    - Tested game in full game speedrun a couple of times. Works fine.
    - Stability fixes.
    - Removed pause game state and instead we just have flag in state_context. That's add things to do when we think about what should happen and don't happen in pause, but we don't care SO much about PAUSE state and it can break things. I hope it did, because that would mean that this horrible bug when we changes in editor don't saved on entering game state, but i hope that's in the past.
    - Changed keys for pause and free cam.

24.02.2025:
    - Cleanup fixes after context refactor.
    - Further improvements of death instinct cooldown reason.
    - Improved light. Next shit need to be when we will go on fully enchancement of light.
    - Added ability to change numerical values of input fields by moving mouse.
    - Worked on checkpoints fix but they're still break things.

23.02.2025:
    - Improved the way death instinct cooldown starts - now he's checking for threat status to make cooldown more fair. For example we don't start cooldown if instinct reason was enemy flying towards if enemy is still alive - because that means player just evaded anyway (with that slow time-flow there's not really much time to change player character direction so that should mean player already was evading).
    - HUGE REFACTOR: Changed the way contextx work - now we can have separate level context that will help us load multtiple levels at once and do other cool shit like simulating game-state in editor to see how entities will look like some time in gameplay.

20.02.2025:
    - Bombe level work.
    - Lights improvements.
    - Added setting for trigger to draw lines to tracked enemies. Used that in latest level with spiky centipedes.
    - Checkpoint functionality. For checkpoints add 'checkpoint' to trigger name.

19.02.2025: 
    - Base version of camera system that tries to keep enemies in sight. Needs a lot of improvements, but that will be happening overtime, like happened with death instinct.
    - There was a real try on this climbing insane shit, but now it's really too complicated of a mechanic in this game. BUT now we should think about another speedboost for player so he really can hunt down these dogs. Or not...

18.02.2025:
    - Made that small temp lights don't make shadows and backshadows.
    - Added buffer for death instinct where it will check if enemy flying towards in first 0.5 sec where we won't start cooldown.
    - In shooting_practice level added last room with spin stop tutorial.

17.02.2025:
    - Made that lights that coming from enemy modifiers comes from always draw loop and that sticky texture queues them. Also sticky texture lines now goes there so we don't keep real sticky texture entity on player position.
    - Removed sticky texture from dead enemies and also we don't go in stun if hit dead enemy wrong way.
    - Birds attacking line (xaip).

16.02.2025:
    - Now we draw external lines of entities in separate entities loop that happen when we fill entities draw queue.
    - Made that enemy modifiers no longer draw lines passively. That's because lines is powerful tool to communicate information to player so we don't want too many of them constantly. We may want to highlight these modifiers more, like with light blobs.
    - Made some immediate mode for lights. First step to improving lights and also handy tool for highligting some entities. Right now we highlight blockers and sword size required guys.

13.02.2025:
    - Changed jump shooter blocker direction rendering to immediate, so it does not get affected by light.
    - 'fixed' jump shooter jiggle entering standing state by adding 0.4 sec buffer for air time. That's an issue with collision system and we'll look into that. Task is already in do-list.
    - Simplified player collisions with enemies when he can damage them.
    - Shooting practice level work. Last room left where we'll teach to stop spin.

12.02.2025:
    - Some more death instinct improvements.
    - Big sword practice level work. Should finish this today. Finished.
    - Shooting practice level markup.
    - Made player stun depends on app time instead of game time. That should give us more chance to recover on instinct error. We'll se how it goes. 
    - Added collisions to sword size required modifier.
    - Made last room in spin practice a bit easier.

11.02.2025:
    - Level work on tutorial practice.
    - Changed the way how death instinct works. Now timescale depends on distance to threat or to angle till explode in case of sword.
    - Maybe fixed some lighting entities copy bugs.

10.02.2025:
    - Fixed temp level loading issue. 
    - Fixed alpha with immediate stuff when lighting on.
    - Fixed sword kill sound when enemies kill themselves on player touch.
    - Maked text rendering in game (it's just notes).

09.02.2025:
    - Sword size required modifier for enemies.
    - Translated sticky texture to immediate drawing, so it's no longer affected by lighting.
    - Spin practice level.

08.02.2025:
    - Плейтест миша. 
    - Reduced delay to machinegun. This could make more accidential activations, but that should increase possibility of player to discover it. We may make a setting for increasing this delay.
    - Maked that after entering rifle mode you should press spin again to enter spin. That should help players understand sword modes.

07.02.2025:
    - Define for no editor mode.
    - Message at the end of the game for speedrun commands. Also message at death for restart key.
    - Sound on failed entering rifle mode and no ammo shoot try.
    - Level work on bombe level and made better shoot stoppers - now we can't pass through without killing them on all currrent levels.
    
06.02.2025:
    - Added scroll ability for create box and now we drawing texture preview on those.
    - Changed explosvie1 a little.
    - Added machinegun mode for rifle. Now just testing.
    - Changed collisions for work on dynamic array.
    - Playtest with kostet.
    - Now machinegun works after first shoot.
    - Arrows on shoot blockers.
    - On air tut1 made arrow pointing down, we'll see how it goes.
    - Blocker mark size won't shrink above 0.35 zoom.
    
05.02.2025:
    - Made that changing timescale in console will affect new time scale called "debug_target_time_scale". Also more tested our imaginary "updating" when on low timescale. Good enough for now.
    - Changed deleting in text input.

04.02.2025:
    - Improved death instinct a bit.
    - Increased centipedes size on bombe level. Should be easier to deal with explosives now.
    - Raycast thinking fixing.
    - Fixed performance issue with death instinct - seems like enemies was raycasting for really long distance for check if they should trigger instinct. Could look more on that later.
    - Changed air_tut level to have one group of enemies.
    - Added gives_ammo property in editor. Also changed inspector and saves for this.
