Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411423 Posts in 69363 Topics- by 58416 Members - Latest Member: JamesAGreen

April 19, 2024, 12:49:59 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogs3D Platform Game: Suzy Cube
Pages: 1 ... 11 12 [13] 14 15 ... 17
Print
Author Topic: 3D Platform Game: Suzy Cube  (Read 44371 times)
Louard
Level 2
**


View Profile WWW
« Reply #240 on: June 21, 2017, 09:38:33 AM »

Wow! This looks so happy and fun. Reminds me of 3D Land.

Thank you! Super Mario 3D Land has been a HUGE influence on this game. https://louardongames.blogspot.com/2015/08/lessons-from-suzy-cube-why-do-master.html
Logged

-Louard
louardongames.blogspot.com
Ishi
Pixelhead
Level 10
******


coffee&coding


View Profile WWW
« Reply #241 on: June 21, 2017, 10:39:35 AM »

Oh! Neat! I had noticed them using it to look "through" Mario when he's in front of the camera, but I hadn't noticed them using it for mario being behind stuff I do think this is the first time they've handled it this way. In order for actual alpha to work properly, (with the whole model appearing as a single translucent silhouette) I figure you would have to render your character silhouette to a separate buffer and then draw that buffer to your screen as a single translucent image. The dither pattern doesn't require this kind of buffer.

Ah interesting, I hadn't considered the overdraw problem with using alpha. Maybe some usage of the stencil buffer would be possible to ensure each pixel only gets rendered once (e.g draw only if stencil = 0, and write 1 into stencil buffer when drawing). But I like how the dither looks though anyway!
Logged

Louard
Level 2
**


View Profile WWW
« Reply #242 on: June 23, 2017, 07:18:26 AM »

Hey, folks. I know it's bad forum etiquette, but I don't have time for my usual update paraphrasing this week and so I invite all of you to go check out my full update on my blog:

https://louardongames.blogspot.com/2017/06/suzy-cube-update-june-23-2017.html

Basically, I've been spending most of my week getting levels ready for testing and ensuring the test build works.

For those of you who don't feel like checking out the blog post... Here's Suzy Getting crushed by a big ol' bumblebee...



P.S. Good time to ask again, I guess! Anyone interested in testing the game (on iOS), send me a private message with your name and email address!

See you next week!
Logged

-Louard
louardongames.blogspot.com
Louard
Level 2
**


View Profile WWW
« Reply #243 on: June 30, 2017, 12:39:38 PM »



Man! I am inundated with gameplay clips!

Not much else to talk about this week. I started my week implementing some last minute tweaks and bug fixes based on my own playthroughs and feedback from a friend. One such tweak had me diving into Suzy's character controller to fix a bug which could cut her jumping short when trying to jump while pressing into a wall. The controller was erroneously treating it as a collision with a ceiling! Whoops! Fixing this, obviously, smoothed out a number of sporadically unreliable jumps.

By mid week, I had a build ready to go for testing. On Wednesday, Touch Arcade mentioned my search for testers on their front page and the floodgates were blown wide open!

In one day, I quadrupled the number of testers I had previously and I've been reading feedback emails and pouring over gameplay videos ever since.

As you might expect, then, I've been quite busy gathering playtest notes and implementing nips, tucks and fixes based on them.

For example, I added a guardrail to a semi-hidden area of the first level after watching a player misstep and fall to his death...



And I also made things a bit easier on Level 3-1, a snowy auto-scrolling level, by slowing down the scrolling slightly and also moving the kill wall which follows the camera.



The kill wall will, as the name implies, kill poor little Suzy if she falls too far behind the camera's view. It's meant to, basically, accelerate what is, for all intents and purposes, an inevitability.

I noticed, from a few gameplay clips, that players seemed to get flustered by the pressure, so I gave them a bit more breathing room when falling behind and slowed things down a bit. We'll see if easing off this way helps with completion on this level.

So far, no obvious disasters in the gameplay department. Players don't seem to be getting lost or anything and, other than the issue above involving Level 3-1, folks seem to be more than capable of getting through most levels.

As previously mentioned, I won't be discussing specifics regarding the game's 'Special' levels in order to keep some surprises for even Suzy's most loyal followers, but I did want to mention that I've got the paper design done for Level 2-S and plan on drafting it and, hopefully, one more special level next week. For those of you who are currious, the special levels are optional levels which are meant to be short departures from the game's regular levels and offer an opportunity for players to earn more Bonus Stars to unlock later levels.

On that, I bid you all farewell until next week. I've got many more videos to view, notes to take and tweaks to make.
Logged

-Louard
louardongames.blogspot.com
Louard
Level 2
**


View Profile WWW
« Reply #244 on: July 07, 2017, 01:38:59 PM »

Hey folks, so sorry about the late update and the fact it's going to be another cop out Blog link!

I've had a short week because of Canada Day and spent most of it pouring over gameplay video from testers. So this update is really just some examples of the types of changes I've been implementing based on the videos and tester feedback.

So, for those of you who are interested in reading about that kind of in-the-weeds details, you can hop on over to my blog for the full update.

https://louardongames.blogspot.com/2017/07/suzy-cube-update-june-7-2017.html
Logged

-Louard
louardongames.blogspot.com
Louard
Level 2
**


View Profile WWW
« Reply #245 on: July 14, 2017, 12:30:16 PM »

Late in the day, dang!

I've been pulled away by embassy craziness including helping some new folks acclimatize to Caracas and a LOOONG day trip to get two months worth of parcels to Caracas from Panama... MAN!

Given that, I didn't get anything really big done this week but, instead, tackled more small improvements and fixes, for the most part. Well, except for designing Level 3-S, the World 3 Special Level!



Isn't she gorgeous!?

I also updated to Unity 2017.1 which was relatively painless! A funny thing that sometimes happens is that the engine ends up incorporating a feature I was handling through script before. This time, that was time-scale independent particle emitters. I used to handle this through a custom script which would manually update all the emitters under it based on the engine's realtime timer rather than the main timer. Now though, thanks to this:



I was able to rip my script off all the emitters using it and simply set the newly added parameter for the same effect!



I use it in cases like this when I might want to pause or slow down the game for effect but allow certain effects to play normally.

Some more small changes include, hopefully, fixing issues a tester found with the game's Launch Pads.



They are meant to be locked into place using a ground pound and then spring Suzy into the air, but this tester found it was possible to have them misbehave by ground pounding them again during different parts of the sequence. I think it's all good now ^_^



I know lives are antiquated and I don't want to get into it.. Suzy Cube uses lives. OK!? That being said, I feel players aren't earning 1Ups as much as I would like, so, as I've been making other small fixes to levels, I've also been going in and adding more coins or swapping out some of the singles for 5 or 10s in order for players to have more lives for the tougher levels.



Something I found a number of testers struggling with has been these Blocker enemies. There seemed to be two issues: 1. players not figuring out the tactic of jumping to make them jump then using the recovery time to get around and 2. players figuring it out but then failing at the execution because of the tight window of opportunity. Since Suzy Cube isn't meant to be a hardcore game, I decided to simply err on the side of making this easier and added a much longer recovery time to the blocker after it jumps, hopefully giving players more time to get around and making the tactic more obvious as well.

Finally, I changed the 'behind stuff' effect for Suzy into what I had originally intended.. which is how the Mario games have been doing it forever.



I thought my previous dithering based approach would solve the blending artifacts but it turned out to introduce it's own artifacts instead. As I went in Shader Forge to fix the issue, I discovered the Stencil Buffer options! I wouldn't have even known the stencil buffer was what I was looking for if not for Simon Lavigne, who had originally helped me with the dither based implementation. Now, however, armed with the knowledge that the stencil buffer could, indeed, give me the nice silhouette effect I was looking for, I set it up and BAM! Nice translucent silhouette of Suzy when she's behind stuff!

What the use of the stencil buffer solved was the self-blending artifacts caused by a naive alpha blending approach.



Notice how you can see 'inside' Suzy? The stencil buffer allows me to discard any pixels which have already been drawn, thus eliminating parts of Suzy blending over existing parts of her.

Well, that's it for this week. Next week should be clear of distractions (I hope!?) so I should be able to finish off the last two Special Levels and, hopefully, get a new build out to a new group of testers.

See you then!










Logged

-Louard
louardongames.blogspot.com
Louard
Level 2
**


View Profile WWW
« Reply #246 on: July 21, 2017, 07:29:46 AM »

Crazier week than I expected! Things in the city are getting more and more complicated and my work's been disrupted more than I would have though. On that whiny note!!

CHECK IT!!



Yep! That's Suzy Cube running on AppleTV.. It's also NOT AN ANNOUNCEMENT OF SUZY CUBE IS COMING TO APPLETV!!!! Just thought I would clarify that in case the caption on the photo wasn't clear enough. I've wanted to try the game out on Apple's set-top box for a while and, because of disruptions to mail services, I've only now gotten my hands on a USB-C cable, making it WAY easier to register my device and get the game running on it! I didn't put any time into implementing the Siri Remote, so I had to play using a gamepad... That being said, the game runs really well on the AppleTV and plays like a dream using a gamepad!

So, a couple firsts this week! 1. First time playing the game on Apple TV and 2. First time playing the game end to end including all Special Levels!

Yep, as promised (sort of?) last week, I finished off design work on Level 4-S and Level 5-S this week.



I mean, like, sweet ass levels, riiight!? One's all about testing Suzy's running around abilities and the other takes her maze solving capabilities to task. Fun diversions from constantly falling off rotating platforms into lava!

That's it for this week's update and I really don't know what to say about the next couple weeks. In order to preemptively avoid any possible political kerfuffle which we might experience in the coming weeks, I'm getting shipped out of the country for a bit. I don't know what sort of working space I'll have where I'll be staying, but I'll, hopefully, be able to continue making progress on the game.

On a related note, if any of you know of some game developer and/or board gaming meetup groups in Miami, let me know, I'll be staying there for the next couple weeks.

So, please join me next week when we will either find out what work I've been doing or how I've been enjoying my forced vacation to America's Wang.
See you next week!


Logged

-Louard
louardongames.blogspot.com
Louard
Level 2
**


View Profile WWW
« Reply #247 on: July 28, 2017, 11:04:25 AM »

Thanks for checking in! Not much to update all of you on. Working from Miami has been more distracting than I had anticipated.

Soooo... What HAVE I been doing!? Mostly little things. I spent some time doing some performance tests on my iPod Touch, trying out different quality settings and checking the results. So far, it looks like I'm not fillrate bound, as decreasing the rendering resolution has very little effect on framerate. On a more positive note, I've noticed almost no performance loss from turning on anti aliasing (2xMSAA). I'm currious to find out if it'll be feasible to leave it on for all devices.

I also got a fresh build out to a new group of testers. I'm expecting a shorter round of testing this time. The levels in the testing list are the same as those from the last round of testing. I'm, basically, just looking to see the effects of the changes made following the previous round of testing.

And, finally, I decided to take the time to implement something I've had on the back burner for a while now. It's a simple procedural bounce added to Suzy when she lands from a jump.



And, since the bounce is added to an object at the root of her hierarchy, you'll notice that it can be added on top of whatever animation follows. So, whether she's jumping in place or at a run, the bounce will add life to the landing. You'll also notice that it works quite well with the dynamic motion of her hair buns.

The idea basically comes from Super Mario Sunshine and I thought it would give Suzy a bit more of that rubbery quality many of the enemies show in their animations.

Well, that's it. Short update in light of having a hard time staying focused. I've started looking into formats for storing my text strings for easy localisation. So, maybe by next week, Suzy's going to be bilingual.. or even trilingual!?

See you all next week.
Logged

-Louard
louardongames.blogspot.com
ProgramGamer
Administrator
Level 10
******


aka Mireille


View Profile
« Reply #248 on: July 28, 2017, 05:24:36 PM »

That's actually a really effective effect, good job!
Logged

Louard
Level 2
**


View Profile WWW
« Reply #249 on: August 04, 2017, 09:02:08 AM »

Sorry, no multilingual support yet. Figuring out the best way to load stuff and the best format in which to store localization text has proven to be more trouble than I originally expected.

I know, I know, excuses excuses! Truth is, I haven't been concentrating on the game much this week. Little bits of work here and there mostly related to file loading and tester gameplay review have been disrupted by shopping trips as I attempt to cross everything off my wife's and my shopping list before returning to Caracas.



Among a handful of small changes like adjusting the placement of text on the "Stage Cleared" screen for better placement on iPad and iPhone, I did make a rather important change to the order of four of the game's early levels.

Based on feedback from a friend, I decided to swap Level 1-4 and Level 2-3. Both snow levels. Level 1-4 has proven to simply be a bit too difficult as a World 1 level.



Similarly, I've swapped the World 1 and World 2 special levels for similar reasons.

Well, that will, unfortunately, do it for this update. If all goes well, I should be back in Caracas next week. Hopefully, I'll be less distracted once I'm back home! See you all next week.
Logged

-Louard
louardongames.blogspot.com
spicy gyro games
Level 0
**



View Profile WWW
« Reply #250 on: August 04, 2017, 10:46:19 AM »

Looks fun. Reminds me of Bomberman Hero for N64. Underrated game!
Logged

Ian_A
Level 2
**


Indie Artist & Designer


View Profile WWW
« Reply #251 on: August 04, 2017, 12:24:47 PM »

game looks rad!
Logged

CRIMSON KEEP - First Person Action Roguelite
Louard
Level 2
**


View Profile WWW
« Reply #252 on: August 11, 2017, 07:07:29 AM »

Oh! Neat! I had noticed them using it to look "through" Mario when he's in front of the camera, but I hadn't noticed them using it for mario being behind stuff I do think this is the first time they've handled it this way. In order for actual alpha to work properly, (with the whole model appearing as a single translucent silhouette) I figure you would have to render your character silhouette to a separate buffer and then draw that buffer to your screen as a single translucent image. The dither pattern doesn't require this kind of buffer.

Ah interesting, I hadn't considered the overdraw problem with using alpha. Maybe some usage of the stencil buffer would be possible to ensure each pixel only gets rendered once (e.g draw only if stencil = 0, and write 1 into stencil buffer when drawing). But I like how the dither looks though anyway!

LOL!! I don't know how I missed your reply when you posted it. As you probably noticed, that's what I ended up implementing. Thanks for the suggestion! If they keep being that good, I've got to look through your replies more carefully!
Logged

-Louard
louardongames.blogspot.com
Louard
Level 2
**


View Profile WWW
« Reply #253 on: August 11, 2017, 07:30:16 AM »

I'm back home and it shows!
I've got a localization solution up and running and I think I've accounted for all text currently in game.



I settled on CSVs for storing and loading my translation data. Google Sheets makes it super easy to store/edit/export these using separate pages in a single spreadsheet. What's nice is that I've made all pages inherit their left column from the English page, so as I add new entries, all other language pages are automatically updated!

In the game, I simply load the appropriate CSV into a static dictionary using the left column as keys and the right column as values. I wrote a simple static function which takes a string as input, uses it as a key to search the dictionary and then simply returns the result or an appropriate error. This makes it really easy to call from any script which needs to dynamically populate text fields.

For text fields which are populated right in a unity scene...



I wrote a handy little script which I can attach to any object containing a text field. The script simply pulls the content from the text field, feeds it to the translator function and replaces it with the returned result. YAY! So in the shot above, for example, the prefab for the Settings Panel has a text field at the top containing the word "SETTINGS". In the Spanish localization file, the key "SETTINGS" corresponds to the value "AJUSTES". The script takes what's in the field (SETTINGS) and replaces it with the value (AJUSTES). Easy peasy!

Remember folks... If it looks, at all, like your project is going somewhere, don't keep shoving it full of static text. Take the time to properly source your text from external files to save you many more headaches down the road!

ALSO! I fixed a little timing issue I had with these guys...



It was a subtle one too. Depending on how fast the level was loaded, the timing of the beat-blocks would end up offset compared to the music. So, like, loading from the level select screen... probably fine... reloading after death (faster)... de-synced... Booh!

To this I say.. .WHY DID I NOT LOOK THIS UP BEFORE!!?? I literally found an analogue to Time.time called AudioSource.time!!!! I literally just had to search the Unity site for "Timing elements to music"!!!

Do your research, kids!

Anywho. I literally switched out Time.time for AudioSource.time, fixed a small issue it introduced and BAM! problem solved! The beat-blocks now can't de-sync from the music as they get their timing directly from the music's audio source timer!

A nice productive week! I like it!
Check back in next week. I'm hoping to put out a new test build this afternoon, so I'll hopefully have some test-led tweaks to a new set of levels to share with you then.
Until then!
Logged

-Louard
louardongames.blogspot.com
Louard
Level 2
**


View Profile WWW
« Reply #254 on: August 18, 2017, 11:03:25 AM »

Why, hello there! How good of you to join me!

I have hardly received any videos from the current round of testing which is not what I was hoping. I'm going to have to check my TestFlight stats to see how many installs I've had to see if it's a problem with folks getting the build or not...

So, failing that, I've been doing little bug fixes, keeping 3rd party assets up to date and tweaking physics settings on the project.

I know, right!? Tweaking physics settings!? Well, thanks to a recent post on the Unity blog, I was given a better understanding of what certain settings do. So I changed the project's internal physics timing to better match the target 60fps framerate while also lowering the physics iterations count. This second change should lighten the load on physics calculations at the cost of accuracy. Since Suzy Cube mostly relies on the physics engine only for detection, I figured it would be a safe bet. So far, it looks like the game is running more smoothly on all platforms I've tested... So that's good news!

The only thing this change broke was the behaviour of the Double Jump's float ability. I made some changes to the script and got it back in working order.



The last few days have actually been spent working off script on a feature I had decided to defer a long time ago. Save Slots!



Now, folks sharing a device can each have their own save slot! Since I use PlayerPrefs for saving data, and it all gets saved to a single file, my implementation simply involved adding a suffix to my old keys. So, the key for storing coin total, which used to be "coins" now looks like "slot1coins" or "slot2coins" etc.

I'd say the work was about 50% coding the support for the feature and 50% building the interface for accessing/deleting the save slots.



All properly localized, of course!

Aaaand I've, finally, put ink to paper on a publishing contract! Not ready to announce with who yet, but stay tuned for more on that!

That's it for this week. See you all next Friday!
Logged

-Louard
louardongames.blogspot.com
Louard
Level 2
**


View Profile WWW
« Reply #255 on: August 25, 2017, 06:14:33 AM »

I can FINALLY say it...


Noodlecake will be publishing Suzy Cube!!

In addition to the usual publishing duties, they've also agreed to take on some development tasks to help me make Suzy the best she can be. I want to be clear, though, we are not moving the goalpost and are not growing the scope of the project. The game was a lot for me to take on alone in the first place and Noodlecake's involvement will help ensure you all get to play a solid, polished version of what I set out to make. Also, with Noodlecake helping with porting and additional localization, it also means more people will get to enjoy Suzy, which is fantastic news!

In other news...

Most of my week has been spent cleaning up code comments and trimming fat from my project files in anticipation of actually having to let someone else in there (YIKES!). And I also went ahead and solved an issue a lot of testers had been complaining about forever...



Yep... Suzy can finally find her own damn way out of doorways! It used to be that after getting teleported to the doorway exit, players would have to manually move her out of the doorway... Annoying, I know... Well, no more! Thanks to a new script which, when triggered, can override Suzy's controls, she can now walk herself back out of the dark. What's neat is, as far as Suzy's concerned, the player it still the one holding down on the joystick!

This script might come in handy again when it comes time to make a controls tutorial animation...

Well, there you go, folks! Cat's out of the bag! We've been in talks since GDC and I'm glad to finally have all the papers signed and the hands shaken to be able to share the news with you.

So, please help me in welcoming Noodlecake to the world of Suzy Cube!
Logged

-Louard
louardongames.blogspot.com
tanis
Level 1
*


View Profile WWW
« Reply #256 on: August 25, 2017, 07:36:17 AM »

It's good to see you have chosen Noodlecake. Congrats and I hope to see this game on the App Store soon Smiley
Logged

io3 creations
Level 10
*****



View Profile WWW
« Reply #257 on: August 25, 2017, 09:01:27 AM »

Congrats on going with Noodlecake!

I know, right!? Tweaking physics settings!? Well, thanks to a recent post on the Unity blog, I was given a better understanding of what certain settings do.
Could you post the url?
Logged

Ishi
Pixelhead
Level 10
******


coffee&coding


View Profile WWW
« Reply #258 on: August 25, 2017, 12:20:25 PM »

Congrats on getting a publisher!

Also, with Noodlecake helping with porting

This is exciting, are you able to say what the new platform(s) are?
Logged

CosmicCrystal
Level 0
**


// GalactaGirl // HellStar Squadron //


View Profile WWW
« Reply #259 on: August 25, 2017, 08:03:48 PM »

Wow this looks awesome. Love me some 3D platformers. Camera angles are giving me Pac-Man World vibes from the PS1.
Logged

Pages: 1 ... 11 12 [13] 14 15 ... 17
Print
Jump to:  

Theme orange-lt created by panic