Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 3 4 [5] 6 7 ... 10

Author Topic: Aqizzar makes a game  (Read 15496 times)

Aqizzar

  • Bay Watcher
  • There is no 'U'.
    • View Profile
Re: Aqizzar Makes A Game - Release #1
« Reply #60 on: August 23, 2013, 12:35:47 am »



New, slightly improved next-day bugfix release.  Just like the real game-devs!  I fixed the problem that prevented me from upping the jumping power, so now I'm playing around with the physics.  Also fixed a falling bug, because I'm an idiot.  This has in turn revealed a previously unknown bug where jumping towards a wall causes the '@' to bounce like a superball.  I wanted to implement bouncing at some point, but not like this.  I haven't bothered fixing it yet, so have fun.

If for some reason you give a crap about looking at this, I have included new controls.  If you're in "normal" movement mode, pressing 1-9 on the num-bar changes your jumping power.  I've also implemented some indicators to show you what power you're on and the current control mode, because what the fuck.  This actually introduced me to some huge deficiencies in my GUI framework, but luckily I know enough about standard C# objects to account for my own incompetence.

Release #2 download link:
https://www.dropbox.com/s/h1d9x4i4x4nzxez/Lunkheads%20Zero%20-%20%232.rar
Logged
And here is where my beef pops up like a looming awkward boner.
Please amplify your relaxed states.
Quote from: PTTG??
The ancients built these quote pyramids to forever store vast quantities of rage.

MaximumZero

  • Bay Watcher
  • Stare into the abyss.
    • View Profile
Re: Aqizzar Makes A Game - Release #2
« Reply #61 on: August 23, 2013, 10:11:49 am »

Clearly you need to program water physics next.

And explosions.
No way, needs enemies and nuclear spread shot laser bazookas to shoot them with.
Logged
  
Holy crap, why did I not start watching One Punch Man earlier? This is the best thing.
probably figured an autobiography wouldn't be interesting

ToonyMan

  • Bay Watcher
  • Danger Magnet
    • View Profile
Re: Aqizzar Makes A Game - Release #2
« Reply #62 on: August 23, 2013, 02:05:33 pm »

This kind of reminds me of Clonk really.  Along with the clonky controls!
Logged

Aqizzar

  • Bay Watcher
  • There is no 'U'.
    • View Profile
Re: Aqizzar Makes A Game - Release #2
« Reply #63 on: August 23, 2013, 06:47:49 pm »

Clearly you need to program water physics next.

And explosions.
No way, needs enemies and nuclear spread shot laser bazookas to shoot them with.

I'm getting there.  As I mentioned, there's a weird bug involving the flipping of angle when an object hits a hard stop.  I resolved this for landing on the ground by just stopping whatever's moving with a note to turn this into some kind of collision.  Clearly something bigger is needed.

I wanted my first development goal, now that I have the physics engine in place, to do a stress test by throwing objects.  The step after that would be outside forces causing different objects to move.  The obvious benchmark for both of these things is grenades, and as we all know from one of my old favorites Worms, grenades bounce.  So I'll look into making the bouncing a little more sane, and get some work done on time-delayed actions too.

Along the way I'll probably make the interface slightly more sane to extend.  The GUI code I have now is worlds more advanced than anything I've made before, but it'll be labor intensive until I don't have to manually define every tile outside of the map and border.
Logged
And here is where my beef pops up like a looming awkward boner.
Please amplify your relaxed states.
Quote from: PTTG??
The ancients built these quote pyramids to forever store vast quantities of rage.

Aqizzar

  • Bay Watcher
  • There is no 'U'.
    • View Profile
Re: Aqizzar Makes A Game - Release #2
« Reply #64 on: August 27, 2013, 10:52:12 pm »

Bumpan mah own thread.



Last few days have been both very and not at all productive.

https://www.dropbox.com/s/3v7wufnimaykive/Lunkheads%20Zero%20-%20%233.rar

Thanks to our excellent resident Math Help Thread, good guy Karlito reintroduced me to high school trig, and I dusted off those wacky Cos and I-Tan buttons on my old TI-83.  The arc of movement in the air now behaves about the way one would expect it to, instead of the almost-working hackjob I had before.

Today I attempted the same level of hackjob to make bouncing physics work.  I've decided that it's close enough to good that I'm not going to worry about improving it until absolutely necessary.  The arcs were obviously bad, the bouncing is just quirky.  The biggest quirk in making a turn-based platformer is that everything is rendered in a snapshot of about one second's worth of movement.  This produces oddities such as when it looks like you're on the ground but haven't actually landed yet (pretty sure I took care of that).  Or if you're bouncing along about equidistant up and down, it looks like you're hovering.  I've accepted that some of this is unavoidable and I'll be moving on from basic movement mechanics soon anyway.  As long as object can get where they're going in a reasonably predictable fashion, I'm okay with it looking weird.

Pursuant to these new mechanics, I added some more debug stuff.  There's now an indicator to show what the player's current movement status is, so it's slightly more clear when you can and can't control your movement.  And the player's "bounce factor" can be manually controlled as well.  Pressing the number keys still changes your jump strength, and now pressing Shift + Number changes your bouncing (in the form of 0% to 90% movement retained after impact).  Adding these indicators also improved my display code a little, but whatever.

So all in all, little visible progress in two days' work, but I'm much more confident in the next stage of development - tossing objects.  As always, play with it if you want, and thanks again to Karlito for answering my dumb questions.

EDIT: Naturally, it took me three minutes of playtesting to get myself in an infinite-bouncing loop.  Note to self, don't make anything too elastic.
« Last Edit: August 27, 2013, 11:04:38 pm by Aqizzar »
Logged
And here is where my beef pops up like a looming awkward boner.
Please amplify your relaxed states.
Quote from: PTTG??
The ancients built these quote pyramids to forever store vast quantities of rage.

MaximumZero

  • Bay Watcher
  • Stare into the abyss.
    • View Profile
Re: Aqizzar Makes A Game - Release #3
« Reply #65 on: August 28, 2013, 12:02:17 am »

So, how long before you turn my game into a vidja gaem? :P
Logged
  
Holy crap, why did I not start watching One Punch Man earlier? This is the best thing.
probably figured an autobiography wouldn't be interesting

freeformschooler

  • Bay Watcher
    • View Profile
Re: Aqizzar Makes A Game - Release #3
« Reply #66 on: August 30, 2013, 06:40:10 pm »

Have you ever played Megaman RL? Most likely you have, given the game's aesthetics. If not, you could draw inspiration from it or maybe just learn what not to do.

Cool stuff with trig, though. Who knew that would ever come in handy making games? Funfact: apparently, the person responsible for Spacewar (the Ur-vidya) borrowed some trigonometric sorcery for the computer he was using to make it work. Sine and cosine: helping make video games since video games were made.
Logged

Aqizzar

  • Bay Watcher
  • There is no 'U'.
    • View Profile
Re: Aqizzar Makes A Game - Release #3
« Reply #67 on: September 02, 2013, 09:39:34 pm »







Power-Goals for this release:

Resolve endless bouncing bug - ON HOLD
Make the user-interface less shitty - ON HOLD
Fix minor display and physics bugs - DONE
Make interactive objects besides the player - DONE
Steal aiming mechanics from Worms - DONE
Implement scalable inventory management - DONE
Pull my hair out designing scalable list-managers - DONE
Design special-effects processor - DONE
Build Rube Goldberg object activity processor - DONE
Model application of force on moving objects - RUSHED
Keep status indicator consistent with real status - RUSHED
Motherfucking explosions! - DONE

Download:
https://www.dropbox.com/s/1l74ls6h0hkdafh/Lunkheads%20Zero%20-%20%234.rar

Not bad for three days' work, considering most of it was spent with insomnia and a hangover.  I should start keeping a development journal (besides this thread), so I don't have to rely on my memory for keeping track of ideas.

I had been planning for my next set of power goals to be something like equipment management, and effecting the player's vital statistics with items.  However the serious deficiencies in my user-interface design, especially the fact that I don't have one, really slapped me in the face with this development.  I'm not exactly hewing to Good Practices coding with this project, but I am trying to keep it as professional as I can, especially in the sense of planning for the future.  Everything is being designed with at least some attention to flexible expansion, since I know any stopgap feature I put in now is only going to be a big pain in the ass when I have to replace it later.

The user-interface managed to escape this scrutiny until now, when bodging on gauges with zero long-term planning finally put up a wall in front of additional features.  I think it's time I sat back and had a serious discussion with myself about how to convey any more information and controls to the player, along with what those controls are going to do, before I devote time to developing features that I'll just have to implement a new interface for later anyway.  Every core functionality should be accounted for, so even the stuff that won't be implemented for a long time like AI-management or blueprinting will at least have a dummy button to eventually connect.

Which means that right as I'm at my most productive, I'm choosing to dive back into the horrid abyss of high-level game planning, an abyss few developers ever escape.  Me and that abyss are old friends.  For a lifeline, I'll try to keep improving my existing code, like fixing that goddamn bouncing bug or imparting force in a mostly-realistic manner, as well as post my thoughts to this thread so anyone who wants to can give me free ideas and tell me why my concepts are doomed to failure.



I haven't bothered making a read_me.txt yet because seriously, but there's a lot of new roguelike-y crap in this build so here's the updated list of CONTROLS:

(Escape) - Immediately exit the game, if you're not in a special control mode.

(F1) - Toggle between normal movement and Debug Mode.  In Debug Mode, you ghost around the map in all eight directions of the Numpad unaffected by physics or collisions.

(Number Keys) - Change the distance the PC can jump.  The default is actually between 2 and 3.

(Shift + Number Keys) - Change the amount the PC bounces when hitting the ground.  You'll only see a difference if you land with some speed.

(Numpad 7, 8, and 9) - The jump keys, which fling you a little ways into the air.  Left and right impart an angle.  Naturally, you can't jump when you're already in the air.

(Numpad 4 and Numpad 6) - Walk left and right.  To go up or down a staircase, simply walk into it and the little @ will climb up or down automatically.  You cannot move through a diagonal space.  You also can't move when you're in the air, unlike your typical platformer.

(Numpad 5) - Advance a cycle without moving.  Note that all of the movement keys will also advance time if you can't actually move.

(G) - Pick up items from the ground, either the space you're standing on or the spaces directly adjacent to you.

All of the actions below involve selecting an item.  Use the (Up) and (Down) keys on the keypad or numpad to cycle through the sidebar menu, (Enter) to make your selection, or (Space) to cancel the action.

(D) - Drop an item.  Can be done in mid-air but conservation of momentum does not yet exist in this universe.

(A) - Activate an item.  There is currently no confirmation if an item can be activated aside from the Inventory changing.

(Shift + A) - Deactivate an activated item.  Same disclaimer.

(T) - Throw something.  Use the Numpad to move the cursor around, (Enter) to fire and (Space) to cancel.  The angle and length of the line determines where and how hard you throw the object.

(Shift + T) - Activate and throw.  Perform two actions for the cost of one!

Download:
https://www.dropbox.com/s/1l74ls6h0hkdafh/Lunkheads%20Zero%20-%20%234.rar
Logged
And here is where my beef pops up like a looming awkward boner.
Please amplify your relaxed states.
Quote from: PTTG??
The ancients built these quote pyramids to forever store vast quantities of rage.

Skyrunner

  • Bay Watcher
  • ?!?!
    • View Profile
    • Portfolio
Re: Lunkheads Zero - Release #4 - Boom!
« Reply #68 on: September 02, 2013, 10:58:44 pm »

I forgot if you answered this before, but are you using version control? If yes, I suppose it's going to be kept closed source...?

Do I see Perfectly Generic Objects being flung by the explosions in that last image?
Logged

bay12 lower boards IRC:irc.darkmyst.org @ #bay12lb
"Oh, they never lie. They dissemble, evade, prevaricate, confoud, confuse, distract, obscure, subtly misrepresent and willfully misunderstand with what often appears to be a positively gleeful relish ... but they never lie" -- Look To Windward

Aqizzar

  • Bay Watcher
  • There is no 'U'.
    • View Profile
Re: Lunkheads Zero - Release #4 - Boom!
« Reply #69 on: September 02, 2013, 11:18:41 pm »

I forgot if you answered this before, but are you using version control? If yes, I suppose it's going to be kept closed source...?

I have no idea how to set up Version Control in Visual Studio 2010 Express, but I've never looked either.  I guess that would be nice, instead of just manually adding bullshit version numbers to the window name and making haphazard backup archives.

As for the source thing, I don't have a compelling reason to distribute the source at any point, mostly because it's a theory demo anyway.  I'd love to eventually include some amount of modding support, and my item structure is already half-accidentally built with that intention, but I don't see myself handing out the actual code.  Maybe if and when I move on to a fully graphical, real-time game the roguelike code will be set free.

Do I see Perfectly Generic Objects being flung by the explosions in that last image?

You're damn right you do.  Mass and momentum don't exist yet, so I'm really pleased that the explosions turned out as well as they did.  Give it a try and see what you think.
Logged
And here is where my beef pops up like a looming awkward boner.
Please amplify your relaxed states.
Quote from: PTTG??
The ancients built these quote pyramids to forever store vast quantities of rage.

Skyrunner

  • Bay Watcher
  • ?!?!
    • View Profile
    • Portfolio
Re: Lunkheads Zero - Release #4 - Boom!
« Reply #70 on: September 03, 2013, 02:18:52 am »

Usually you don't use the integrated version control, but use an external program like Git+github.

As for open-source, it's more so other people can look at your code and learn from it or offer fixes or insights more than modding, I guess.

I'll try it out when I get PC access :v
Logged

bay12 lower boards IRC:irc.darkmyst.org @ #bay12lb
"Oh, they never lie. They dissemble, evade, prevaricate, confoud, confuse, distract, obscure, subtly misrepresent and willfully misunderstand with what often appears to be a positively gleeful relish ... but they never lie" -- Look To Windward

GalenEvil

  • Bay Watcher
    • View Profile
    • Mac-Man Games
Re: Lunkheads Zero - Release #4 - Boom!
« Reply #71 on: September 03, 2013, 03:00:54 am »

You can also use Git + Bitbucket, which allows free closed-source version control hosting
Logged
Fun is Fun......Done is Done... or is that Done is !!FUN!!?
Quote from: Mr Frog
Digging's a lot like surgery, see -- you grab the sharp thing and then drive the sharp end of the sharp thing in as hard as you can and then stuff goes flying and then stuff falls out and then there's a big hole and you're done. I kinda wish there was more screaming, but rocks don't hurt so I guess it can't be helped.

ToonyMan

  • Bay Watcher
  • Danger Magnet
    • View Profile
Re: Lunkheads Zero - Release #4 - Boom!
« Reply #72 on: September 03, 2013, 09:20:46 am »

Yes, explosions!  Lunkheads Zero: Cortex Command Killer
Logged

Aqizzar

  • Bay Watcher
  • There is no 'U'.
    • View Profile
Re: Lunkheads Zero - Release #4 - Boom!
« Reply #73 on: September 03, 2013, 10:44:57 pm »

Since I decided to implement rebounding mechanics, they have been a constant source of confusion.  I decided to forgo working on them any more for the time being, until a playtester found a circumstance that could lock up the program.  With this example, I could at least find one problem.  Some hasty math meant that with just the right impacts objects could gain momentum from rebounding, and even if they didn't it could get wonky.  So at least that'll hopefully cut down on the infinite-loop freezes.

The bigger, more obvious problem is not so much an infinite-loop in the programming sense, but a constant feedback loop created from just the right combination of falling height and the constant downforce of gravity.  In the version available above, you can see this by setting your jump power to 6 and bouncing factor to 9, and jumping straight up.  A dump of the math looks like this:

Code: [Select]
pre-grav 2.83655270436591 (downward)
post-grav 7.73655270436591
 pre-move 7.73655270436591 (bounce)
post-move 6.962897433929319
 pre-grav 6.962897433929319 (upward)
post-grav 2.06289743392932
 pre-move 2.06289743392932
post-move 2.06289743392932
 pre-grav 2.06289743392932 (flip)
post-grav 2.83710256607068
 pre-move 2.83710256607068
post-move 2.83710256607068
 pre-grav 2.83710256607068 (downward)
post-grav 7.73710256607068
 pre-move 7.73710256607068 (bounce)
post-move 6.963392309463612
 pre-grav 6.963392309463612 (upward)
post-grav 2.06339230946361

Notice the cycle repeating with a variance of less than a tenth of a percent.  The movement mechanics work in a two-step process: First, every object with any momentum is moved wherever its going (and no longer gains momentum from bouncing), shaving off momentum from the bounce.  Second, the (9.8 / 2) downforce of gravity is applied.  If you hit ground traveling around 7.5 tiles a turn with a rebound force of 90%, you'll bounce up high enough to overturn and start fall just long enough to hit the ground at the same speed.  There's also certain circumstances where gravity causes the object to bounce higher than it fell from.  While that is incredibly dumb, it doesn't create a perfect loop.

I've added a couple hooks to minimize these problems.  One is that, if you're closer to the ground than gravity would move you, only enough gravity is applied to get you there.  The other is that if you bounce off the ground with less momentum than the downforce of gravity you just don't bounce.  Neither of these are necessarily good solutions, and neither catches the problem seen above.

Knowing jack shit about physics, I'm genuinely stumped on what to do with this.  Besides making sure nothing has too high a bounce factor, and tacking on extra hamfisted solutions.  Like, dropping your momentum after rebound if it's around half of gravity.  Maybe I'll test that, but I'm way open to ideas here.
Logged
And here is where my beef pops up like a looming awkward boner.
Please amplify your relaxed states.
Quote from: PTTG??
The ancients built these quote pyramids to forever store vast quantities of rage.

Skyrunner

  • Bay Watcher
  • ?!?!
    • View Profile
    • Portfolio
Re: Lunkheads Zero - Release #4 - Boom!
« Reply #74 on: September 03, 2013, 11:04:59 pm »

I'm not quite sure how the bouncing works, from your description...
Logged

bay12 lower boards IRC:irc.darkmyst.org @ #bay12lb
"Oh, they never lie. They dissemble, evade, prevaricate, confoud, confuse, distract, obscure, subtly misrepresent and willfully misunderstand with what often appears to be a positively gleeful relish ... but they never lie" -- Look To Windward
Pages: 1 ... 3 4 [5] 6 7 ... 10