• Register

Indulge Lady Tallowmere and see how far through her lovingly violent dungeons you can delve in this 2D indie action roguelike-inspired platformer. New rooms are procedurally generated every time you play. How far can you make it?

Forum Thread
  Posts  
Alpha 96+ (Games : Tallowmere : Forum : Tallowmere General : Alpha 96+) Locked
Thread Options
Mar 22 2014 Anchor

Okay, so this is my first official devlog post about Tallowmere. I quite like IndieDB, and these forums seem decent enough to use! Gives a good sense of community interaction and feedback. Forum threads also let me post more frequently and on topic, compared to IndieDB's news posts (in my opinion).

VERSION INFO

I released Alpha 95 on 15 March 2014. This thread is titled Alpha 96+. Rather than using small version numbers, I'm currently using the numbers to represent how many days I've spent working on Tallowmere. To me, it feels like it lets the version numbers give a tangible meaning: I've worked on this game for 3 months so far.

96+ means this thread aims to cover what's been happening, or what's planned, for the next version down the line. I don't know what the next version number will be, but it will be greater than 95!

SO, WHAT'S PLANNED FOR 96+?

  1. Controller support
  2. Difficulty settings
  3. Trap tweaking

1. CONTROLLER SUPPORT

Right now, I have a PlayStation 3 DualShock3 controller working with Tallowmere under Mac OS 10.9, both bluetooth and USB. I am in the process of setting up button icons in-game and creating a controller setup wizard so that you can map your controller's buttons.

I have two wireless Xbox 360 controllers that I want to try. I've ordered a PC/Windows-compatible Xbox 360 wireless controller adaptor that should arrive this coming week.

I'm trying to ensure Tallowmere can support any controller under any desktop operating system. PlayStation, Xbox, or generic computer controller. Be able to map buttons to whatever you'd like.

Part of the challenge is, unlike keyboard keys which have consistent internal codes and don't change, "joystick"/controller buttons can differ between systems and controllers. Internally, Unity recognises a controller button as JoystickXButtonX, but if you have, say, a Square button on your controller, having the game say "To attack, press Joystick1Button17" isn't helpful to the player. So I'm creating an in-game wizard that will prompt you button-by-button to press a matching button that's displayed on the screen, so that the game can relay each button to you in a meaningful manner.

Joystick support (e.g. X and Y axis), however, has to be setup from Tallowmere's launcher before the game starts. This is kind of annoying but simple enough to perform.

Anyway, this is what my wizard looks like so far:


I haven't created Xbox-like buttons yet, but will do that soon. So you'll walk over to either a PlayStation or Xbox controller, then begin the wizard.

2. DIFFICULTY SETTINGS

I've had a request to implement some sort of difficulty setting. The game is too hard and unforgiving for some, which is fair enough - I never said this game was easy! But when it's just way too hard for some, that's not what I want. I do want the game to be enjoyable, in a rage-inducing kind of way, so need to cater for different skill levels.

I've only thought about this briefly, but I am considering:

  • Letting the player choose their starting health.
  • Having 3 or 5 difficulty settings that have pre-defined starting health settings
  • Implementing lives, like the original Super Mario Bros. Player could have 3(?) lives but it's still game over if you lose them all.

I love permadeath, but I do recognise that this can be just too hardcore for some. So I will probably add options to cater for different playstyles. This also means I'll want to improve upon the highscore system - different scoreboards for different difficulties. So I'm probably leaning towards 5 different difficulty settings for this reason. Or have a choose-your-own-adventure setting so you can tweak everything to your heart's content. But that would be way down the line, hah!

3. TRAP TWEAKING

I also want to ensure pinwheel traps don't sit adjacent to each other horizontally+horizontally or vertically+vertically; situations where you have to go through a 1-block column or row with a pinwheel is annoying since you'll get hit at least once; you won't die, but... When you then immediately have to go through another 1-block column or row with another pinwheel, there is no safe haven, that's just too much unavoidable damage to take. So I'll be making sure pinwheels don't spawn so close together.

I'll also be looking at slightly reducing the chance that poison skull traps can spawn. Right now, for each ceiling or wall block, there is a 33% chance that a spike or skull trap will spawn. If the game rolls to spawn one of these traps, there's a 50/50 chance of either a spike or a skull. I'm thinking of making this a 60/40 chance instead, 60% spike and 40% skull. Sometimes there's just too many projectiles to dodge, haha.

4. FURTHER DOWN THE LINE

Originally I was thinking of doing controller support, then gear customisation, then co-op... but I'm thinking I might tackle co-op before gear customisation.

These additions are probably weeks away, but at some stage I will go for a Kickstarter or Indiegogo campaign to help get the word out about Tallowmere, and to hopefully gain enough funding to cover the $1,500 USD Unity Pro license fee, and maybe try to offset the cost of this MacBook Pro! And will aim for a Greenlight campaign during this time as well. I want to be able to say, "Hey, this game is playable, people have been enjoying this game through other stores, if you'd like to play this on Steam, click Yes!"

But yeah, controller support, co-op and multiplayer, and gear customisation; I think these are the remaining mechanics I need to create. Once these are done, I can return to adding content, like different potions, more weapons, enemies, bosses, cutscenes and stories. The more I add to Tallowmere, the more fun the game becomes. Just a matter of time and effort!

Mar 25 2014 Anchor

Nice post! I am addicted to the game already. Thanks for all the info!

Mar 27 2014 Anchor

Thanks!

As of today, I'm heavily leaning towards scrapping the controller setup wizard :cry:

I ended up writing a giant whinge about my experiences with controller input in Unity so far. Blog post here. Not sure if I'll write more there in the future but who knows.

Long story short, to set up a controller, I think I'll have the player bind their controller buttons and "joystick" axes in the Unity pre-game launcher Input tab:

  • Gamepad1 Button D-Pad Up
  • Gamepad1 Button D-Pad Down
  • Gamepad1 Button D-Pad Left
  • Gamepad1 Button D-Pad Right
  • Gamepad1 Button Back/Select
  • Gamepad1 Button Start
  • Gamepad1 Button Y/Triangle
  • Gamepad1 Button B/Circle
  • Gamepad1 Button A/Cross
  • Gamepad1 Button X/Square
  • Gamepad1 Button LB/L1
  • Gamepad1 Button LT/L2
  • Gamepad1 Button L3
  • Gamepad1 Button RB/R1
  • Gamepad1 Button RT/R2
  • Gamepad1 Button R3
  • Gamepad1 Axis Thumbstick1 Up/Down
  • Gamepad1 Axis Thumbstick1 Left/Right
  • Gamepad1 Axis D-Pad Up/Down
  • Gamepad1 Axis D-Pad Left/Right
  • Gamepad1 Axis Back/Select
  • Gamepad1 Axis Start
  • Gamepad1 Axis Y/Triangle
  • Gamepad1 Axis B/Circle
  • Gamepad1 Axis A/Cross
  • Gamepad1 Axis X/Square
  • Gamepad1 Axis LB/L1
  • Gamepad1 Axis LT/L2
  • Gamepad1 Axis L3
  • Gamepad1 Axis RB/R1
  • Gamepad1 Axis RT/R2
  • Gamepad1 Axis R3
  • Gamepad1 Axis Thumbstick2 Up/Down
  • Gamepad1 Axis Thumbstick2 Left/Right

While I could try to do all this in-game, it's confusing as heck for me. I've got keyboard mapping in place nicely, and basic PS3 buttons nicely too. But as pointed out in this Twitter discussion here, the user's controller drivers might say a controller axis is a button instead of an axis, or vice versa. And there's so many buttons and axes that having the player input them 1 by 1 in-game, if they made a mistake, it's just too much time and effort to do them all again. And with trying to keep Tallowmere's UI as minimal as possible... my gut feeling is to use Unity's pre-game Input tab to map gamepad buttons. I am still happy with the way I've done keyboard key bindings, but cross-platform controller support is another beast. Keyboards are all the same, but controllers and controller drivers are not.

Right now I have basic left/right thumbstick axis implemented, and the code is easy for me to use other pre-set axes that exist in the Unity Input tab, so I'm gonna run with those. Perhaps Lil' Wizard will make an appearance some other time. But yeah, I want players to be able to use any controller configuration, so the above list of buttons and axis looks like a lot, but once it's set up you should be sweet. Also, multiply the above list by how many players you'll have... looking at just 2 players once I begin coding co-op, but yeah, controller support is much more enduring than I first imagined.

In-game, you'll still be able to choose which button does what action, just like the current keyboard mapping system, and I'll have my default button recommendations available. And you'll be able to choose if you want Xbox or PlayStation style buttons displayed.

If I were just supporting Windows with Xbox controllers it'd be really simple! But I'm doing all this so that users hopefully don't have to use third-party button mapping software.

-------

As for difficulty settings, after much thought, I'm considering having kittens, or some other cute animal(s). Say, 9 kittens in a pen when you start a new game; sacrifice a kitten and you'll gain +10 Max Health, so you could have up to 100 Health to start the game with. And I'd have different scoreboards for each number of kittens you sacrifice. After you leave the starting area, the pen gets closed off. All other numbers in the game, like enemy health and your attack power, remain the same; you'll just be able to last a lot longer - with a guilty conscience knowing you killed some kittens to help you get farther along! :devil:

I debated having named difficulty levels, or a gauge or different cauldrons or buttons or switches for you to set how hard you want the game to be. But sacrificing kittens sounds nice and horrible.

~ EDIT: ~

Good news: Lil' Wizard and her controller setup is staying!

I tried having a big list of button and axis input as listed above, only to discover that Unity doesn't retain button settings for some dumb reason. But it retains joystick axes, so the thumbstick, D-pad, and triggers can just be set once and it's all sweet from there, but all the other input malarkey is gone; I've returned to keeping things as simple as I can.

Ended up wasting several hours over one Unity bug that's out of my control... It's all a learning experience, but ugh. This is taking much longer than I anticipated, but I believe things are back on track. Not stuck pondering and scratching my head as much. I will get through this!

(note to self: don't try to support multiple controller types ever again lol)

Edited by: chris.nz

Apr 4 2014 Anchor

lol. I'm glad you didn't give up. Hopefully, it will be worth it in the future! I have a wired 360 controller that I love for this type of game. ;)

Apr 5 2014 Anchor

Thanks, yeah sometimes I find venting actually helps me work through what's troubling me. I try not to rant (negativity breeds negativity and all), as most things are solvable easily enough, but when I'm facepalming over and over again and shaking my head because I'm so frustrated, I need an outlet! So this took many extra days as a result, bit of writing to try and wrap my head around things, even a few days of not working on this to let my subconscious do its thing to give me a clearer head and buck back into it. In the end, I've gotten past the roadblock and am on the homestretch. Such is the life of a programmer!

I only have wireless Xbox 360 controllers, so I'm really hoping no extra coding is needed for the wired ones.

But being able to sit back with a gamepad is quite pleasant, so I hope you'll be in for a treat with the next build soon!

Here's a look at the control settings for Xbox gamepads (you can use the left thumbstick to move, too):

Reply to thread
click to sign in and post

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.