I love to code in my free time and loved working with my team in my previous jobs. I am positive and enthusiastic, work well in a team, and try my hardest with my work and projects. I enjoy both the creative and programming side of projects. I like to write clean fast code and my past projects reflect this.
So originally, the goals for the project were to optimize the pixel blending code in the rendering code for the AGS game engine in ScummVM. The problem was: I completed that goal about half way through the coding period. So me and my mentors talked and what I did after was optimize the rendering code that most other engines in ScummVM use. I used SIMD cpu extensions to net a pretty huge performance gain.
In the AGS renderer, it got a 5x improvement all around and a 14x improvement in the best scenarios. In the global rendering code for all engines to use it got a 2x improvement all around. Here are the speed up results.
I’d like to thank Google Summer of Code 2023, ScummVM for the opportunity to work on a project like this and learn so much. And I’d like to thank my mentors for helping me when I was stuck, and teaching me how to work in a team.
It has online multiplayer. This is one of the levels.
The game has it's own renderer with transparency functionality written in x86 Assembly and with SIMD instructions. It has its own lua scripting system also, and a very efficient netcode.
2 years after the game I decided to make a more user-friendly/useable level editor for the game in Rust.
The game never usually has many enemies on the screen, but even if there are the game only uses several kbs per second. You could easily play it on a dial-up connection.
I learned A lot about the C language through the development of this game and learned a lot about how to look for memory leaks. The codebase uses its own custom memory allocators like arenas, stacks, and pools. It never uses traditional heap allocators and because of this, tracking the lifetime of memory in the program is really easy now and can be debugged much more efficiently due to this system and essentially makes memory leaks impossible.
This was the first time I coded in Javascript and made a website. I made a lan-multiplayer game where you have to stomp on each other's heads like goombas. (Its based off of the fan game of the same name)
The game has multiple maps and players can create their own maps for others to play!
I also made this with WebGL so I could add post processing effects to certain levels like the water distortion one seen here.