So, since the last post I've been working on the project quite a lot. And while working on the project, here's what I've added/fixed:
- Spikes now work correctly
- Added support for up to 4 players in one server
- The dedicated server is now in working order
- There is now client hosting(You can now host without a dedicated program)
- When taking a hit, you now flash for 3.5 seconds
- The bubbles' speed, and the platforms' speed is now changed to be faster with V-sync enabled
- Speedshoe monitors were added
- The rolling physics have been improved
- You can no longer accelerate to go against gravity while rolling
- Added 100% working text chatting
- Added server messages when a player leaves and joins(Still a work in progress)
- Shields are now visible online
- The electric shield now attracts rings correctly
- Objects now only update online when a player is near it
- Added model swapping option for slower computers(I blame the rings)
- Added homing attack option(This isn't 100% in working order)
- Players now have user defined names above their heads
- Fixed the radii of objects
- Object syncing when reconnecting(So let's say you collect some rings, but then you have to reconnect, this makes it so the rings are not there when you reconnect)
- Configurable render distance, and fog
- Partly broken gravity changing monitors
- Smoother online movement(This will help with slower connections and computers)
- Shields no longer disappear, and then reappear on another player online
- Functions were added for more convenient editing
- Object physics were added as a test(This is only working offline, and will probably not be in the final version)
- Music changing objects have been added(Bug: It only changes music/plays a sound, when music is already playing)
- All sound related code has been redone to work dynamically(Drowning, speedshoes, etc.)
- Added loading related features: When loading a stage, the engine will check if the file "Loading.png" is in the stage's main folder. If there is a file, it will display it behind the loading bar(The file can be any resolution). In the event that there isn't a file, it will display nothing when loading. But, a Sonic 2 styled 'Title card' will appear after loading.
- Player speeds are now definable
- Image fonts were added for efficiency
- Textures have been optimized(resolution, and file size)
- Fixed underwater physics
- Added ring object syncing when following a player(So let's set you have a ring chasing you, then a new player joins, normally they wouldn't be synced, but with this system, it fixes that problem)
- Added badnik(Buzzbomber) movement, looking at players, turning every five seconds, and shooting actions
- Reworked the IP input system(The strings are no longer split apart. And the IP address can be something like: "localhost")
- Added fog, and custom render distances
- Players no longer float above the ground
- Fixed packet loss related problems with crucial information
- The water shield has been fixed, and the electric shield now allows you to both double jump, and jump higher.
- Configuration files have been reorganized
- A player must be 80% underwater to lose a shield
- Players do not lose shields underwater with god-mode on
- Added infinite jump dashing with debug mode enabled
- Added teleporting features, so players can teleport to each other (Has some problems with collision at times)
- Spindashes now have more power
- The dedicated server now requires port 80
- Players can now rejoin their current server by pressing the 9 key
- Although incomplete, functions have been added to free all objects, and the stage
Nice! ^^ Good Job