new jar (v2): http://www.java-gaming.org/user-generated-content/members/244457/kami.jar
Awesome. I only get like 30fps on my laptop, so hearing that is a relief.
Here’s a status update.
Major update is the addition of grappling hook (press shift or click the mouse button), it will shoot out to wherever your camera is pointing and pull the character towards itself once it’s attached.
Also minor adjustments to smoke particles movement, terrain generation (higher structures, more tapered tops, and some random colors), and character physics. Also, the camera now has an adjustable height (adjusted with Z and X).
Next steps are to add run time terrain generation / infinite terrain. Some kind of demo game mode (like the lava idea or feel free to make suggestions). And maybe some sort of cell shading, which is going to be interesting since this is all cpu rendered, with no graphic libraries.
By the way, the character physics are governed by 3 lines of constants at the top of the character.Character class, so feel free to adjust them and play around and let me know what values seem to work nicely.
The character physics are basically vx/vy *= friction, vz = (vz - gravity) * friction. Collision damper is multiplied to velocities when you collide into the edge of structures or the ground. Jump acc determines how much to add to vz when you press jump. Run acc is how fast you move while on the ground; air run acc is while you’re in the air (jetting or hooking); climb acc is for when you’re climbing structures. Jump mult is multiplied to vx and vy when you jump. Hook speed is how fast the hook shoots out, hook friction 1 just means the hook does not slow down as it shoots forward, and hook gravity 0 means gravity does not apply to the hook. Hook acc determines how strongly the hook pulls the character towards itself once attached.
private static final double FRICTION = 0.9, AIR_FRICTION = 0.97, CLIMB_FRICTION = .99, GRAVITY = .05, COLLISION_DAMPER = .1;
private static final double JUMP_ACC = .2, RUN_ACC = .1, AIR_RUN_ACC = .04, JET_ACC = .04, CLIMB_ACC = .055, JUMP_MULT = 1.5;
private static final double HOOK_SPEED = .2, HOOK_FRICTION = 1, HOOK_GRAVITY = 0, HOOK_ACC = .05;
Also feel free to adjust the default terrain color (line 15 of terrain.terrainModule.FullGray class) and let me know what seems to work, because I’m not fond of the gray theme going on at the moment.