Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

I think I couldn't get it to work. For context I use zen browser (based on firefox) on ubuntu. I can see the ground (green), the sky (blue) and the net in the middle. Plus I see the UI for the ball in the bottom left corner.  I could shoot the ball over the net but couldn't see any target. I don't known if it is related but the `setStatus` function is not defined

 I think a better UX would be to have the ball being visible and the UX being directly over the ball. A nice polish be could to calculate the velocity at the point of impact, apply some basic friction and conservation of energy and compute a "bounce" (i.e. relaunching the sim with the new params). Made in C, i see it seems you don't want to use one of the big game engines, I would suggest you take a look at vectarine (a custom game engine in early stage on development) it might interest you

(1 edit)

I think I should modify the description to better reflect the fact that I was not quick enough to finish all intended development on the project.
You saw all the available content I was able to code before the deadline.
The target is not implemented yet and the collision between the ball and the obstacle was not done in time either.

I checked about the 'setStatus' thingy. When compiling with Emscripten, it generates three different files by default. The first one is a wasm file (Wasm stands for Web Assembly it is a set of standardized low level instructions for web browser to help with performance while dealing with computation heavy web applications), it's what my C code compiles into. The two other files are an html file for a webpage and some Javascript "glue" which calls the wasm file and interacts with it. In the html file, I deleted everything that wasn't absolutely necessary for the game to run. There was call to the function 'setStatus' (in Javascript)  which was modifying the html file to print a loading bar. This function being for the html and not the application itself, I removed it. But in the Javascript file, there was still some places where it tried to interact with the html.

That's a really good idea for UX. I was feeling there was something off but I couldn't guess what it was.
I was planning on adding rebounds but, again, I ran out of time.

I attempted to do the impossible by using a 2D graphics library (SDL) to literally do 3D renderin. I had to do so much 3D stuff from scratch, it's jarring. And on top of that I choose to make the physics of the projectile as accurate to reality as I could. I wanted to do everything from scratch to challenge my C coding skill, and my maths skills too. I derived all the detailed equations of motion and then translated them in such a way that it would be possible for me to implement. SDL is a pretty good library and is commonly considered a game engine but it is absolutely not intended for what I tried to do with it. Funnily enough, my initial goal was to implement two projectiles, a ball and a frisbee. But just doing everything correctly for one projectile and its associated graphics was way too much work in C for the time frame of a 1 week game jam 

Thank you for the suggestion, I will take a look at vectarine! And thank you for trying my project!