Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - PortalShifter

Pages: 1 2
1
Postmortems / Re: Dungeon Quest Post-Mortem
« on: May 27, 2013, 12:10:46 pm »
I've fixed some of the issues, including some stuff I thought I wouldn't be able to fix, so that's cool. Also noticed tons of issues I didn't notice at first, but have cleared up a lot of them now! When I have a final "perfect" version I'll post to the regular games thread. For now, here's the most current version:

Dungeon Quest

https://www.dropbox.com/s/zewtszgpozacp5o/Dungeon%20Quest.swf

You will probably need the standalone Flash Player:

http://www.adobe.com/support/flashplayer/downloads.html

2
Ask a Question / Re: Tileset error
« on: May 17, 2013, 11:46:21 am »
I think the tile setup is too complex. Thanks!

3
Ask a Question / Tileset error
« on: May 17, 2013, 11:35:00 am »
I deleted some tilesets in my game that I thought I wasn't using and I think this has caused an error in the game.

But then when I reloaded the tilsets the level still won't open. And then I rebuilt the level using the existing tilesets that I know for sure are loaded, and I'm still getting the error so now I'm wondering if it's something else that's missing. Here's the error text.

[object AlchemyExit]
   at Function/<anonymous>()
   at Function/<anonymous>()
   at Box2DAS.Dynamics::b2Fixture()[/home/stencyl/stencyl.net/jenkins/jobs/StencylWorks-Dist/workspace/plaf/flash/Box2DAS/Box2DAS/Dynamics/b2Fixture.as:25]
   at Box2DAS.Dynamics::b2Body/CreateFixture()[/home/stencyl/stencyl.net/jenkins/jobs/StencylWorks-Dist/workspace/plaf/flash/Box2DAS/Box2DAS/Dynamics/b2Body.as:105]
   at stencyl.api.engine.actor::Actor/initBody()[/home/stencyl/stencyl.net/jenkins/jobs/StencylWorks-Dist/workspace/plaf/flash/root/stencyl/api/engine/actor/Actor.as:494]
   at stencyl.api.engine.actor::Actor()[/home/stencyl/stencyl.net/jenkins/jobs/StencylWorks-Dist/workspace/plaf/flash/root/stencyl/api/engine/actor/Actor.as:302]
   at stencyl.api.engine::GameState/loadTerrain()[/home/stencyl/stencyl.net/jenkins/jobs/StencylWorks-Dist/workspace/plaf/flash/root/stencyl/api/engine/GameState.as:1361]
   at stencyl.api.engine::GameState/loadScene()[/home/stencyl/stencyl.net/jenkins/jobs/StencylWorks-Dist/workspace/plaf/flash/root/stencyl/api/engine/GameState.as:539]
   at stencyl.api.engine::GameState/begin()[/home/stencyl/stencyl.net/jenkins/jobs/StencylWorks-Dist/workspace/plaf/flash/root/stencyl/api/engine/GameState.as:300]
   at Function/<anonymous>()[C:\Users\Tristan\AppData\Roaming\Stencyl\stencylworks\preview\scripts\MyAssets.as:1130]

4
Postmortems / Dungeon Quest Post-Mortem
« on: May 15, 2013, 10:17:44 am »
Dungeon Quest Post-Mortem

Design

I wanted a game that would satisfy some gamers' sense of retro nostalgia, something like an arcade mini-RPG like the original Gauntlet games. Something that I would enjoy playing. The idea really solidified when I realized that I could create regions as rooms, to trigger monsters to attack the player upon entering the room/region. This gives a natural progression and flow to fighting monsters and I think it's elegant design because it allows the player a soft difficulty control by choosing how fast they enter rooms to trigger more monsters.

Allowing 3 chooseable classes increased development time by almost a factor of 3. I probably could have done things in a more efficient way, but the way I set it up I had to make 1 scene for each class for each level. I ended up creating a level once for Paladin, in its entirety, then duplicating it twice for Nomad and Warlock and recustomizing/resetting targets for all the enemy actors for each level. Very tedious.

Also once I had my level completely designed, I wasn't able to mess with it much because I had to make identical changes to the other 2 classes' levels, which may have hampered my post-design play testing and tweaking a bit. Once I finished a level design, it was awkward to make serious changes, although I did make many small changes to balance each level.

My design tends toward more hardcore play styles which are not always accessible to everyone. I tried to tone down the difficulty after incorporating specific feedback but the game probably should have been a little easier in general.


Programming

I basically taught myself Stencyl while making this game. I had made some half completed prototypes for a few simple games but I was almost entirely unfamiliar with Stencyl programming when I started this. I'm pretty proud of how much I learned and I think that just in terms of programming, I probably achieved as much as anyone did in this jam.

I had no idea how much time I would spend troubleshooting bugs and performance issues. I probably spent at least 15-20% of the final development time just on working out bugs. I'm very happy that there are no game-breaking bugs in the final version, although there are just a couple of not-ideal interactions that I wasn't able to solve, such as the collisions that happen when Nomad uses his Dancing Scimitars ability. I did make efforts to fix it, but wasn't able to figure out, or didn't have time to figure out what exactly was happening with those collisions.

If I made a list of specific things I fixed for the final version throughout the design process, it would definitely be in the hundreds.


Art

My art graphics were adapted from sprite sheets from other games. Even though I didn't make them from scratch, I certainly put tons of hours into cropping files, making images transparent, making the animations and sizing collision boxes based on image sizes. I have to wonder if not having original graphics was a factor in not winning, but I really didn't have the time to be able to teach myself Stencyl programming and from-sratch pixel art simultaneously so I just decided to go with the art I could find. I do think that the game achieved a very coherent aesthetic considering that the sprites are culled from a half dozen or so games, and I feel good about being honest about where the sprites came from.


Music

I had fun finding songs for the soundtrack, which I think is pretty epic. I did get some feedback though that it didn't suit the game, and it may have been better suited to a retro styled chiptune soundtrack. I do have many years of sound design and electronic music experience so for my next game I will strive for all original sound. I think all the sound effects in the game work pretty well for their functions.


Play Testing

I underestimated how significant play testing can be in the design process. One of my testers gave me a totally crucial suggestion early on that completely changed the flow of the game, by doubling the speed of player and enemy movement I achieved something much closer to the arcade feel that I was going for, then I originally had at the movement speeds I started with. Through this I realized how important speed of movement is to games in general, but especially for an arcade style game. Each of my testers gave me very different feedback about what they didn't like, and I was able to get a better sense of the game's difficulty with feedback from more people. The more testers you have, the more accurate your objective sense of the game will be.


Mistakes

I feel like my biggest mistake was the switch on level 4 inside the bricks that the player can pass through, but look like regular bricks. I wonder how much time people may have spent trying to figure that out and been frustrated. My failure was to not provide adequate information to the player that his character was able to move through the solid bricks. One of my play testers said “You lost my trust” at that part because I didn't give enough indication that I was “breaking” one of my game rules. That should have been a big red flag to me to change it! The solid-yet-passable bricks would have been perfect for a secret area, but shouldn't have been used for a puzzle that was necessary to finish the level.

Aside from that, the only other major mistake that really bugs me is the collisions on Nomad when he does Dancing Scimitars, but as I said, I wasn't able to fix that in the time I had. The Werewolf boss is particularly bad in this regard.

There's also an issue with using the tutorial character screens which set off the player's ability cooldowns, which I didn't consider in testing.

I'm happy to say that other than that and a few other minor unintended interactions, I don't feel like there are many major mistakes in the game!


What I Learned

Limiting global attributes to only the ones you really need, and using scene/behavior attributes for everything is better for performance.

Create regular actor / kill and not doing Create actor / recycle is crucial for performance.

Having only a few actors in the scene set to Always Active is crucial for performance.

Having customized actors for enemies leads to some tedious programming, but may be crucial for some interactions to work (ie. follow player target).

Persistent upgradable stats are fairly complicated to implement, at least for this game.

Boss fights need more detailed balance testing than normal levels.

The more testers you can have at an early stage of development, the better. Ideally I would want detailed feedback from at least 10 people for any game.

Movement speeds are very important to overall game design.

Collision box sizes are also really important.

Showing the player information on the UI, specifically the cooldowns for both abilities, greatly improved the ease of play.



I will be editing for a final post-jam version of the game that fixes the issues mentioned above. I would like to know more about the details of sponsorship from flash game portals like Newgrounds, so if anyone has any advice on how to make that happen please let me know in one of my threads or by PMs. Thanks!

Also, anyone interested in doing art for my next game?  8)

5
Stencyl Jam 12 / Re: Stencyl Jam 2013 - The Winners
« on: May 15, 2013, 09:13:28 am »
Congrats guys! See you next time.

6
Stencyl Jam 12 / Re: Dungeon Quest
« on: May 01, 2013, 12:03:14 am »
Final version! Lots of last minute improvements made, so if you played before release, I encourage you to check it out again.

DUNGEON QUEST

7
Stencyl Jam 12 / Re: Dungeon Quest
« on: April 28, 2013, 11:05:29 pm »
I'm happy to say that the game is essentially finished! All 10 levels and 3 bosses are now complete. More polishing and finishing touches tomorrow.

Dropbox download

Dungeon Quest v1.9

New screenshots!

For the 10th level I did something different. The level only has 1 enemy, which is the shadow version of yourself. Your shadow chases you through the maze level and you restart if it touches you.



Here's what the final boss level looks like. Not going to show him though.


8
Ask a Question / Free Flash game hosting?
« on: April 25, 2013, 10:40:55 am »
This isn't a development question, so not sure if this is in the right sub-forum or not.

Does anyone know a good place to upload and host my flash game for free? I tried several of the hosting sites I could find for free today, and none of them worked.

My game is larger than 16MB so I cannot upload it to Stencyl arcade. I feel like a lot more people would try my game if they didn't have to download it as a swf file.

Any suggestions?

9
Stencyl Jam 12 / Re: Dungeon Quest
« on: April 24, 2013, 12:37:42 pm »
Wanted to add, the game looked great in fullscreen, and at that point I started to realise why it's such a large filesize :)

I'm testing and playing it in fullscreen, so yeah, I hope it looks good  :)

Are you making the sprites yourself? They are also first class!

Sprites have been found and adapted. I guess my original post wasn't accurate. I'm developing this game as art director, programmer, and game designer.

New screenshot added to OP.

Added 2nd boss fight, levels 7 and 8. New enemies. Buffed the Speed stat upgrade.

Please let me know any feedback you have!

10
Stencyl Jam 12 / Re: Dungeon Quest
« on: April 22, 2013, 01:36:19 pm »
This is a cracking game folks :)

Thanks!

One request, can the hero get a basic sword close range attack for the inevitable brown trousers moment your spears run out?

Yeah I would like to include melee attacks, and have messed around a bit but ran into some issues with the animations. Finishing levels is priority and then I'd like to add some new features and some more polishing.

Remember that you can Block with X, and if you use your Q and E special abilities often you shouldn't run out of ammo very frequently.

The new levels are looking really neat! Will post some screenshots soon.

11
Stencyl Jam 12 / Re: Dungeon Quest
« on: April 17, 2013, 09:52:16 pm »
Fixed a bug that prevented Paladin from completing level 3. Uploaded new file.

12
Stencyl Jam 12 / Re: Dungeon Quest
« on: April 17, 2013, 09:51:00 pm »
You mentioned doing the sound yourself, but I'm not hearing that.

Nope, I didn't make the songs. Just finding and arranging them is what I meant.

Thats a pretty huge filesize at 38mb, how come? Huge music files maybe?

Yeah I think so.

13
Stencyl Jam 12 / Dungeon Quest
« on: April 17, 2013, 01:08:52 pm »
My entry for Stencyl Jam 2013 is Dungeon Quest, a top-down dungeon crawler in the style of classic arcade games like Gauntlet, or more recent incarnations like Hammerwatch.

GAME IS COMPLETED!

DUNGEON QUEST

Dropbox download

DUNGEON QUEST


The game is more than 60 MB so I can't upload this to Stencyl Arcade.

* * * * *

Dungeon Quest Features:

3 playable classes: Paladin, Nomad, Warlock each with 2 unique special abilities
Persistent upgradable character stats
More than 20 types of enemies with AI for moving and attacking
Basic puzzles
10 levels
3 bosses

* * * * *













14
Ask a Question / Re: Null Object Reference Error
« on: April 15, 2013, 10:49:39 am »
OK I've narrowed the bug down and figured out how to reproduce it. Should be able to solve this myself I hope.

15
Ask a Question / Null Object Reference Error
« on: April 15, 2013, 10:07:38 am »
I'm getting this error in my game. It seems to happen very randomly, is difficult to reproduce, and I cannot figure out what's causing it.

TypeError: Error #1009: Cannot access a property or method of a null object reference.
   at Function/<anonymous>()[C:\Users\Tristan\AppData\Roaming\Stencyl\stencylworks\preview\scripts\Design_320_320_PowerUps.as:130]
   at stencyl.api.engine::TimedTask/update()[/home/stencyl/stencyl.net/jenkins/jobs/StencylWorks-Dist/workspace/plaf/flash/root/stencyl/api/engine/TimedTask.as:46]
   at stencyl.api.engine::GameState/innerUpdate()[/home/stencyl/stencyl.net/jenkins/jobs/StencylWorks-Dist/workspace/plaf/flash/root/stencyl/api/engine/GameState.as:1661]
   at stencyl.api.engine::GameState/postUpdate()[/home/stencyl/stencyl.net/jenkins/jobs/StencylWorks-Dist/workspace/plaf/flash/root/stencyl/api/engine/GameState.as:1511]
   at stencyl.api.engine::GameState/update()[/home/stencyl/stencyl.net/jenkins/jobs/StencylWorks-Dist/workspace/plaf/flash/root/stencyl/api/engine/GameState.as:1493]
   at org.flixel::FlxGame/update()[/home/stencyl/stencyl.net/jenkins/jobs/StencylWorks-Dist/workspace/plaf/flash/flixel/org/flixel/FlxGame.as:407]

I know that this usually happens when an actor is being referred to that no longer exists. But the only actor being referred to in my behavior is the player actor, who is always alive when this bug occurs. No actors are being created or destroyed by this behavior.

This behavior controls the "PowerUps" in my game that drop randomly from enemies. When an enemy dies they have a chance to randomly drop a power up. When the player collides with the power up, the player's stats change temporarily and then are re-set to what they were before. The part where the power-up actor actually dies is coded in a behavior for that actor, not in this behavior which is attached to player characters only.

If anyone can help, please do! This bug is stopping me from being able to post a demo for StencylJam! =(

Behavior is attached.

Pages: 1 2