Sonic and Sega Retro Message Board: Sonic Realms 0.4.0 - Unity2D Engine - Sonic and Sega Retro Message Board

Jump to content

Hey there, Guest!  (Log In · Register) Help
  • 4 Pages +
  • 1
  • 2
  • 3
  • Last ►
    Locked
    Locked Forum

Sonic Realms 0.4.0 - Unity2D Engine

#1 User is offline KOHCTPYKTOP 

Posted 06 March 2016 - 11:44 PM

  • Posts: 10
  • Joined: 02-September 15
  • Gender:Male
  • Location:United States
  • Project:Sonic Realms
Demo - Windows | Mac | Linux (I'm not able to test on Mac and Linux, so not sure if those'll work - looking for somebody to help out with that!)
Source - Repo | Latest Release


Posted ImagePosted ImagePosted Image

Sonic Realms is a free, open-source 2D Sonic development kit for the Unity engine.

It's free - built entirely in the Personal edition and requiring no external packages. Get Unity, get this, and you're good to go. No limitations on the free version other than Unity's splash screen.

It's easy - scripts take advantage of the visual editor wherever possible. Everything but the logic itself can be modified without having to use code. The code, if you do need to change it, is organized and commented.

It's modular - if you don't want it, don't use it. For example: if you like the physics, but not how the game is set up, just make a new scene and drag in Sonic! Everything is loosely connected, letting you rearrange stuff without getting flooded by errors.

FEATURES

Physics!
A 360 platformer engine. How accurate is it? Well, try out the demo!
But wait, there's more - customizable rotation, gravity in any direction, infinite speed limit, 8 layers for collision, water areas rather than a single water level...
Make a collider, edit the shape, put it on the right layer, and you've got yourself a platform. Don't worry about small gaps and errors - the physics algorithm is built to take account for it.

Character!
No plural... There's currently just one character - Sonic. He comes with his moveset from Sonic 3&K.

Level Stuff!
The essentials - monitors, spikes, springs, moving platforms, water.
A few gimmicks - pipes, tunnels, corkscrews, balloons.
Badniks - two of them! Buzz bombers and motobugs.

Triggers!
They can play animations, sounds, and events in response to the player, all set up from the UI.

Animations are awesome - the can do more than just swap sprites. Unity's animations can change platform position/rotation, enable/disable objects, and even call scripts. Many setpieces can be created just by using triggers to play animations. Let your imagination run wild!

Sound!
Fast and playable from the UI.

Infrastructure!
Design - the flow of the game is coordinated between Game and Level Managers, each with a plethora of gameplay and UI settings exposed in the Unity editor.
Saves - keep track of character, lives, and level progress. Works even in web builds!

Shaders!
A palette cycler for 8 colors, a color curve and distortion shader for water, and a Sonic-style fader (to blue then black) for that extra hit of nostalgia.

Miscellany!
Parallax - Works even in edit mode for easy previewing!
Font tool - Can make a font from any spritesheet. Comes with fonts from Sonic 2, 3 & K.
Unity - A pretty good engine! Did I mention it's free?

FAQ
Can it do 3D?
The engine doesn't have 3D movement and there are no plans for it.

What about 2.5D?
Sure! All that matters to the engine is that you use 2D colliders. The Z axis is fair game both for level assets and Sonic himself.

Do I have to learn how to code?
There is no visual code editor in Unity or Sonic Realms, but you can get pretty far with the trigger system. The most code heavy aspect of the engine would have to be creating new moves and new game modes.

Can I use it for X?
Use it commercially and privately as long as you give credit and don't sue me.

Can I make web games with this?
To some extent... Unity's WebGL deployment is still very young. As a result, there is an especially glaring bug with Sonic's animations in WebGL.

Can I make mobile games with this?
Probably, but you'll have to put in your own controls for it!

What language does the library use?
C#, Unity's .NET 2.0 Subset API.


The engine is pretty bare-bones right now, but hopefully it presents another option to the fangame engines out there today.

I wanted to release early on to see if people might be interested in the project, and I plan to put in more time to fully develop it. I'm open to suggestions for what to make or improve next as well.

The lower level systems (physics, moves, objects) are pretty much set in stone, whereas the upper level (game structure, save files, UI) will probably change a lot to accommodate new features.

I've yet to make a guide, so for now the only learning materials are the demo scenes and code documentation. There should be tooltips in most editor fields. And, of course, I'm always around to help!
This post has been edited by KOHCTPYKTOP: 07 March 2016 - 09:47 PM

#2 User is offline Aerosol 

Posted 06 March 2016 - 11:55 PM

  • FML and FU2
  • Posts: 9594
  • Joined: 27-April 08
  • Gender:Male
  • Location:Not where I want to be.
  • Project:Sonic (?): Coming summer of 2055...?
It's pretty good so far, though moving up and down slopes feels a bit gummy, like your trigonometry or sensors are off.

I have my reservations about allowing this to be used for commercial projects as well, but that's up to you.

#3 User is offline KOHCTPYKTOP 

Posted 07 March 2016 - 03:07 AM

  • Posts: 10
  • Joined: 02-September 15
  • Gender:Male
  • Location:United States
  • Project:Sonic Realms

View PostAerosol, on 06 March 2016 - 11:55 PM, said:

It's pretty good so far, though moving up and down slopes feels a bit gummy, like your trigonometry or sensors are off.


Huh... I can't believe I didn't notice that after months of development. I've pushed up a fix and uploaded new demos. Thanks for the input!
(Sonic was getting ground friction with horizontal input, which isn't supposed to happen.)

Quote

I have my reservations about allowing this to be used for commercial projects as well, but that's up to you.


My reasoning was that I've seen what Strife did to Sonic Worlds to make Freedom Planet, and it'd be cool to have that kind of exposure. What about it do you disagree with?
This post has been edited by KOHCTPYKTOP: 07 March 2016 - 03:10 AM

#4 User is offline Atendega 

Posted 07 March 2016 - 08:14 AM

  • Incapable of capability
  • Posts: 546
  • Joined: 16-August 14
  • Gender:Female
  • Location:Comfy couch
  • Project:Collecting insults from Lobotomy <3
This looks excellent. I can't try it right now, but I've always wanted a good Sonic engine in Unity.

#5 User is offline BlobVanDam 

Posted 07 March 2016 - 08:44 AM

  • Posts: 160
  • Joined: 25-August 10
  • Gender:Male
  • Location:Sydney, Australia
This looks like a great basis for a Sonic fangame. There's still some jittery weirdness on slopes, but it feels like a Sonic game. I also found it a little odd that you are rotating the regular sprite to 45 degrees instead of using the Genesis/MD sprites. If you were doing smooth rotation I'd understand, but it looks a bit odd when you're only got the traditional 45 degree increments anyway. The gravity/camera rotation towards the end also felt off, not sure if it was just the camera, or the movement too.


Overall though, this is very cool. As a Unity user myself, I can't wait to take a look at the code and play around with it.
This post has been edited by BlobVanDam: 07 March 2016 - 08:45 AM

#6 User is offline Aerosol 

Posted 07 March 2016 - 08:56 AM

  • FML and FU2
  • Posts: 9594
  • Joined: 27-April 08
  • Gender:Male
  • Location:Not where I want to be.
  • Project:Sonic (?): Coming summer of 2055...?
Thanks for the quick update! The gumminess is gone, but there's still a weird bug. If I try to run up slope without a lot of momentum, Sonic will slow to a stop, and then jerk forwards then slow to a stop again. There's also some tile separation when the camera moves, but I suspect that's a Unity fuck up of some kind. It's fidgety when it comes to subpixel movements for sprites, if I recall correctly.

#7 User is offline Blast Brothers 

Posted 07 March 2016 - 04:58 PM

  • Posts: 42
  • Joined: 27-October 15
  • Gender:Male
  • Location:Cincinnati, OH
It's a little rough around the edges, but it's a great start. However, I found three main issues:
1. Is anyone else's demo constantly making Sonic run to the left? This isn't supposed to happen... right?
2. The color and mellow wavy effect (which could be made a little more intense) make being underwater look like an acid trip.
3. Sonic sticks to the ground on slopes a little... aggressively?
Other than that, this is really neat- and the gravity-defying section made me laugh. Can't wait to see how this improves ad gets used in the future.
This post has been edited by Blast Brothers: 26 May 2016 - 07:40 PM

#8 User is offline eighttailedfox 

Posted 07 March 2016 - 05:14 PM

  • Posts: 106
  • Joined: 10-November 14
  • Gender:Male
  • Location:Canadia Land
  • Project:Project Maelin
I've been working with the maker for the last few months, mostly as a tester. Helping him find bugs and stuff.

Now I'm a really bad programmer, I've been looking for an engine to use that could also do more HD stuff, not just pixel. With the modular way he's built it, along with Unity's own ease of use, this has been the most user friendly engine I've tried. Which is why I've been helping him so long.

View PostBlast Brothers, on 07 March 2016 - 04:58 PM, said:

3. Sonic sticks to the ground on slopes a little... aggressively?
Other than that, this is really neat- and the gravity-defying section made me laugh. Can't wait to see what this engine gets used for in the future.


If you're talking about the mushroom hill sections, I believe this is mainly my fault. I helped build this level with him, and the bounding box type of collision Unity uses combined with how sonic sticks to the ground, some of my bounding boxes on the mushroom hill assets don't have a large enough angle difference to donate a state where he let's go of the ground.

Such as the section just before the checkpoint, where sonic can spindash all along that curvy slope. So, sorry for that.

Edit: Apparently the angle difference max is set to 70 degrees in this version of the demo. So the two combined is what makes him feel more aggressive.
This post has been edited by eighttailedfox: 07 March 2016 - 05:59 PM

#9 User is offline Atendega 

Posted 07 March 2016 - 05:51 PM

  • Incapable of capability
  • Posts: 546
  • Joined: 16-August 14
  • Gender:Female
  • Location:Comfy couch
  • Project:Collecting insults from Lobotomy <3
I just got around to trying it, and it is excellent.
I vote that everybody abandon's Sonic Worlds and uses this. Unity is just infinitely more versatile than Fusion.

#10 User is offline Xeal 

Posted 07 March 2016 - 06:01 PM

  • Posts: 1188
  • Joined: 06-March 14
  • Gender:Male
  • Location:Rock spinning around a nuclear powerhouse
  • Project:College

View PostAtendega, on 07 March 2016 - 05:51 PM, said:

I just got around to trying it, and it is excellent.
I vote that everybody abandon's Sonic Worlds and uses this. Unity is just infinitely more versatile than Fusion.

But then people would have to learn an actual programming language...

#11 User is offline Atendega 

Posted 07 March 2016 - 06:04 PM

  • Incapable of capability
  • Posts: 546
  • Joined: 16-August 14
  • Gender:Female
  • Location:Comfy couch
  • Project:Collecting insults from Lobotomy <3

View PostXeal, on 07 March 2016 - 06:01 PM, said:

View PostAtendega, on 07 March 2016 - 05:51 PM, said:

I just got around to trying it, and it is excellent.
I vote that everybody abandon's Sonic Worlds and uses this. Unity is just infinitely more versatile than Fusion.

But then people would have to learn an actual programming language...

Quote

It's easy - scripts take advantage of the visual editor wherever possible. Everything but the logic itself can be modified without having to use code. The code, if you do need to change it, is organized and commented.


#12 User is offline Xeal 

Posted 07 March 2016 - 06:08 PM

  • Posts: 1188
  • Joined: 06-March 14
  • Gender:Male
  • Location:Rock spinning around a nuclear powerhouse
  • Project:College

View PostAtendega, on 07 March 2016 - 06:04 PM, said:

Quote

It's easy - scripts take advantage of the visual editor wherever possible. Everything but the logic itself can be modified without having to use code. The code, if you do need to change it, is organized and commented.



How is any of that countering my statement. If you've never used Unity before and you want to jump into using this to make a fan game, you're still going to have to learn (specifically in this case) C#.
Just because the code is commented doesn't mean you don't have to actually understand the language.
This post has been edited by Xeal: 07 March 2016 - 06:08 PM

#13 User is offline Natsumi 

Posted 07 March 2016 - 07:05 PM

  • Miss Fox
  • Posts: 150
  • Joined: 08-February 12
  • Gender:Female
  • Location:Otter's lap
  • Project:Being with my boyfriend
I don't think this shit is even close to ready for a topic release. Its good effort, for sure, but it just feels like you half-finished everything and went "fuck it, its good enough, ship this shit to everyone". The physics feel awkward. Its like they try to be right but just cant make it. The mixing of different zone assets and complete lack of respect for common level design principles is really irritating, even for a test zone. The whole engine is a buggy mess; I can fall through platforms, randomly get picked up by platforms that are too far to pick me up (seriously spindashing in air being lifted by a random platform pixels away from me is dumb), and the shitty execution of the zone rotation gimmick (which is cool but nauseating with the wonky camera work). I cant get it to display larger than 1366 pixels or whatever. There is no way to adjust volume that I can tell of, or pause menu for that matter. What if I want the music shit off so I can listen to some other stuff? My monitor #0 is labelled as display #2 for some strange reason. Graphics quality setting is utterly dumb and shouldnt exist. The underwater palette is questionable at best. The save system is broke (getting game over = I have one life left - sometimes??) Object priorities are way beyond fucked (sonic behind a platform, shield in front???). There seems to be no notion of high plane and low plane. Balloons are silent. I can get hit by spikes when I am still flashing. shield animations are a joke. This puts my GPU load to 80% and my GPU is pretty high end. Signposts don't know how not to rotate infinitely.
Oh right of course; If you hold down and start moving, instead of you just moving (ala S3K physics), you just walk a bit and start to roll.

Seriously with all of these issues (and really I bet I could find many more if I had the time) this engine at this point feels like a crappy knock-off Sonic game, minus the actual gameplay. Its really not ready to be released yet.

As you may tell, I know my Sonic shit pretty well, even down to the code. If you are bothered by it not being basically 99+% accurate to the original, I can help you fix the issues. But I am not touching Unity with a long stick, so I can really only provide technical information and complaints about things you get wrong.
This post has been edited by Green Snake: 07 March 2016 - 07:19 PM

#14 User is offline Atendega 

Posted 07 March 2016 - 07:12 PM

  • Incapable of capability
  • Posts: 546
  • Joined: 16-August 14
  • Gender:Female
  • Location:Comfy couch
  • Project:Collecting insults from Lobotomy <3

View PostXeal, on 07 March 2016 - 06:08 PM, said:

How is any of that countering my statement. If you've never used Unity before and you want to jump into using this to make a fan game, you're still going to have to learn (specifically in this case) C#.
Just because the code is commented doesn't mean you don't have to actually understand the language.
I realize that, but for the most part you don't have to touch any code, just import your assets and arrange them in the editor.

Green Snake said:

:words:
This is already mostly accurate to the Genesis games. I didn't encounter any major problems. Plus, if he doesn't tell us about it, we can't fiddle with the source and help him improve it. Way to be pointlessly pessimistic.

#15 User is offline Natsumi 

Posted 07 March 2016 - 07:22 PM

  • Miss Fox
  • Posts: 150
  • Joined: 08-February 12
  • Gender:Female
  • Location:Otter's lap
  • Project:Being with my boyfriend

View PostAtendega, on 07 March 2016 - 07:12 PM, said:

This is already mostly accurate to the Genesis games. I didn't encounter any major problems. Plus, if he doesn't tell us about it, we can't fiddle with the source and help him improve it. Way to be pointlessly pessimistic.
You are very wrong about it. This is not "mostly accurate" to the Genesis games. Very not so. I did encounter major problems with this at all times. Now, I am not being "pointlessly pessimistic", I am being exactly as pessimistic as I need to be. I was looking forward for this when I saw a video earlier, but I was sorely disappointed by the lack of quality. So I pointed out the things I found (which any decent developer would be thankful for, by the way), and set the tone according to my disappointment. I think, therefore, my tone was wholly justified.
This post has been edited by Green Snake: 07 March 2016 - 07:23 PM

  • 4 Pages +
  • 1
  • 2
  • 3
  • Last ►
    Locked
    Locked Forum

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users