Super Mario Bros. Online

Super Mario Bros. Online Forums
April 19, 2024, 02:10:15 pm
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: Welcome to the Super Mario Bros. Online forums! We hope you enjoy your stay! Please remember to read the rules!
 
  Home Help Search Arcade Gallery Website download Staff List Login Register  

Potential SMBO Community Revival Project

Pages: [1] 2 3 4
  Print  
Author Topic: Potential SMBO Community Revival Project  (Read 4769 times)
Kimimaru
Owner
Super Mario Bros. Online Creator
*****
Offline Offline

Posts: 883



View Profile
Badges: (View All)
Tenth year Anniversary Nineth year Anniversary Eighth year Anniversary
« on: September 19, 2013, 10:09:56 pm »

Hello everyone! I was thinking of having the community revive SMBO since hydra and I don't have much time. This is how it would work:

1. I would write a minimal base engine including animations, physics, and movement in C# using Microsoft XNA - more on this later
2. I would release the engine to the community, which would then add to the engine

Benefits would include pixel-based movement, actual physics, game programming experience for those involved, and a drastic performance increase.

I know that very few of you have much programming experience, so this may be an overwhelming amount of work, especially since I won't be able to include a Server. Visual Studio 2010 Express is free and comes with XNA (or you can download it separately), so it's much easier to get than Visual Basic 6 was.

What are everyone's thoughts?

The base engine will include the following, possibly a bit more than mentioned:

-Base Character class with one derived class: Mario
  -Character stats, pixel-based movement, and animations
-Basic physics engine via a tile engine and height values
-Possible future features set up, to be integrated at later points, such as status effects and action commands
  -Note that I won't be testing these since they will require a lot more before they can be used, so you'll likely have to change or add to them when you reach that point
-Lots of comments to help you add to the engine

The turn-based battle system will have to be implemented by the community; fortunately, this won't be too hard to do in C# since it is a powerful language and XNA has much better input support. If you're new to programming, and still want to contribute, feel free to do so.

Update:
The base engine is complete! This is what it contains:
-Complete Tile Engine with physics engine
-Character class with movement, world collision, and jumping
-Other classes partially set up and not implemented yet, such as Items, Equipment, and Inventory
« Last Edit: September 24, 2013, 03:46:55 am by Kimimaru » Report Spam   Logged

Share on Facebook Share on Twitter

Penguin4478
Touhou Music is Best
Global Moderator
*****
Offline Offline

Posts: 1015


Top Poster On The Forums!


View Profile
Badges: (View All)
Tenth year Anniversary Nineth year Anniversary Eighth year Anniversary
« Reply #1 on: September 20, 2013, 12:32:36 pm »

So SMBO will continue to be a game with ongoing updates/releases, but these are now done by the community and later implemented by you into the game's script and engine?

This sounds like a great idea, especially since I just got Visual Studio 2012 from my summer programming class for free. Will the engine be compatible with C++, C, and/or Java? From what I've heard C# isn't as backwards-compatible with C than C++ is.

If this ever becomes a real thing, I'd probably wrap up my work on the Seven Sages MOD (I'm thinking of ending it at 1.3.0 and picking it back up way later if I feel like it) so I can work on this during my free time instead of playing FPS games all the time.

However, we'd probably need at least 3 people with programming experience in order to make this happen because 1 person can't really do anything at an even remotely moderate pace. Hopefully you'll put comments in your engine because I personally can't stand not having the programming be unreadable by all except the creator  Cool
« Last Edit: September 20, 2013, 12:34:47 pm by Penguin4478 » Report Spam   Logged

Creator and leader of SMBO Union!

YTC: http://www.youtube.com/user/Penguin4478/videos
Card List and Recipes 100% Complete!
jdaster64
Global Moderator
*****
Offline Offline

Posts: 486


FINALLY learned how to block POW blocks in MKWii


View Profile
Badges: (View All)
Third year Anniversary Level 4 Windows User
« Reply #2 on: September 20, 2013, 12:42:19 pm »

Could definitely be interesting; I was just thinking about SMBO recently.  I'm not familiar with C# at the moment, but I'll definitely be picking it up over the next year or so in grad school.  I guess if it's similar enough to C++ or Java I can probably figure it out, though.  I do have VS2012 already as well.

I'd definitely like to tinker with this every now and then, though, if this ends up happening.  I guess when you say that you'll be writing a base engine, does this mean that this will be entirely separate from the current SMBO (none of the same maps / existing content), or will you be porting over / reusing the same old content?
« Last Edit: September 20, 2013, 12:45:15 pm by jdaster64 » Report Spam   Logged


First to get all 47 cards, all in inventory
SIX maxed characters at level 75!
Check out my updated suggestions thread here!
Kimimaru
Owner
Super Mario Bros. Online Creator
*****
Offline Offline

Posts: 883



View Profile
Badges: (View All)
Tenth year Anniversary Nineth year Anniversary Eighth year Anniversary
« Reply #3 on: September 20, 2013, 01:28:53 pm »

So SMBO will continue to be a game with ongoing updates/releases, but these are now done by the community and later implemented by you into the game's script and engine?

Well, not exactly. I won't be doing anything but making a base for the community to build off of. I won't have much time to make it too elaborate. The rest will unfortunately have to be done by everyone by looking at how the original SMBO does things.

This sounds like a great idea, especially since I just got Visual Studio 2012 from my summer programming class for free. Will the engine be compatible with C++, C, and/or Java? From what I've heard C# isn't as backwards-compatible with C than C++ is.

If this ever becomes a real thing, I'd probably wrap up my work on the Seven Sages MOD (I'm thinking of ending it at 1.3.0 and picking it back up way later if I feel like it) so I can work on this during my free time instead of playing FPS games all the time.

However, we'd probably need at least 3 people with programming experience in order to make this happen because 1 person can't really do anything at an even remotely moderate pace. Hopefully you'll put comments in your engine because I personally can't stand not having the programming be unreadable by all except the creator  Cool

XNA is Windows only, and C# is an entirely different language that produces managed code like Java (code executed through an interpreter) rather than native code (the code your computer literally reads) like C and C++, so you'll need the .NET Framework installed (comes with Windows I believe) for C# code to work for the most part. C++ is literally just an extension of C, so you can just write C code if you wish and put it through a C++ compiler and it'll work. C# is purely object-oriented, so there are no such things as primitives; even integers and such have functions available to them and are considered objects. Everything is still used in the same way, so this won't be a problem.

There is an open source, cross-compatible equivalent of XNA called MonoGame, which is still in development. Porting to it is supposedly very easy, but right now it doesn't have a Content Pipeline so importing resources like graphics and stuff must be done through XNA and then converted to MonoGame's format via one of their libraries.

Could definitely be interesting; I was just thinking about SMBO recently.  I'm not familiar with C# at the moment, but I'll definitely be picking it up over the next year or so in grad school.  I guess if it's similar enough to C++ or Java I can probably figure it out, though.  I do have VS2012 already as well.

I'd definitely like to tinker with this every now and then, though, if this ends up happening.  I guess when you say that you'll be writing a base engine, does this mean that this will be entirely separate from the current SMBO (none of the same maps / existing content), or will you be porting over / reusing the same old content?

C# has the same exact syntax as C, C++, and Java (which actually originally adopted C/C++'s syntax to welcome developers), barring a few quirks that you won't be using 99% of the time. C# is safer than C++ but has more control than Java. You can even enable pointers and some other unsafe stuff in C# if you wish, but there are safer alternatives to those and I'd recommend them. The only things I can think of off the top of my head now that C# doesn't have that C++ does are Friend Functions and Multiple Inheritance, the latter of which is implemented in C# and called an interface; it's not as flexible, though. Interestingly, the .NET Framework and C# CLR (Common Language Runtime) support Multiple Inheritance, but it's just not included in the C# language yet.

C# also has very good documentation online on Microsoft's Developer Network (MSDN), so if you're wondering what the syntax for something is or how something works you'll be able to easily find an answer.

And yes, this'll be a completely new engine for SMBO made from scratch. To be honest, you guys will have full control over it after I finish and release the base, but I'm intending it to be an SMBO revival so you guys can remake it (I'll check if I have the tiles and stuff to provide you with if you need it). I will be sure to include extra comments; I usually include a lot when I code so it hopefully won't be a problem.
« Last Edit: September 20, 2013, 01:56:00 pm by Kimimaru » Report Spam   Logged
jdaster64
Global Moderator
*****
Offline Offline

Posts: 486


FINALLY learned how to block POW blocks in MKWii


View Profile
Badges: (View All)
Third year Anniversary Level 4 Windows User
« Reply #4 on: September 20, 2013, 01:38:34 pm »

If that's the case, I vote that it uses a Superstar Saga-styled stat system, those tend to work better for the long run.  But still, this sounds cool; I'm excited to see how this turns out if we can get enough contributors.
Report Spam   Logged


First to get all 47 cards, all in inventory
SIX maxed characters at level 75!
Check out my updated suggestions thread here!
Kimimaru
Owner
Super Mario Bros. Online Creator
*****
Offline Offline

Posts: 883



View Profile
Badges: (View All)
Tenth year Anniversary Nineth year Anniversary Eighth year Anniversary
« Reply #5 on: September 20, 2013, 02:41:48 pm »

Also make sure you guys adopt your own standards for coding style. This'll make the code less confusing and easier to change. I'll try to set them with the base engine.

I'm still waiting on at least 1 more person to confirm; this project is too big for just one or two people.
Report Spam   Logged
hydrakiller4000
Owner
Super Mario Bros. Online Creator
*****
Offline Offline

Posts: 549



View Profile
Badges: (View All)
Seventh year Anniversary Sixth year Anniversary Fifth year Anniversary
« Reply #6 on: September 20, 2013, 08:02:31 pm »

Like Kimi, I will be very busy as well, so I wouldn't be able to work on the engine. However, I welcome the developers of this new engine to feel free to reach out to me for C# or game development help occasionally. I can't guarantee that I will always be available, though.
Report Spam   Logged
jdaster64
Global Moderator
*****
Offline Offline

Posts: 486


FINALLY learned how to block POW blocks in MKWii


View Profile
Badges: (View All)
Third year Anniversary Level 4 Windows User
« Reply #7 on: September 21, 2013, 08:10:15 am »

As a side note, I have no prior experience in coding in networking, framework or the like; pretty much all of the programming I've done has been small-scale algorithms or self-contained programs designed for specific purposes.  I'm fairly decent at optimizing, as well, but someone else would have to handle the basic framework and online functionality.
Report Spam   Logged


First to get all 47 cards, all in inventory
SIX maxed characters at level 75!
Check out my updated suggestions thread here!
Penguin4478
Touhou Music is Best
Global Moderator
*****
Offline Offline

Posts: 1015


Top Poster On The Forums!


View Profile
Badges: (View All)
Tenth year Anniversary Nineth year Anniversary Eighth year Anniversary
« Reply #8 on: September 21, 2013, 12:09:05 pm »

Same with me. I can make fluent programs, I even made a text-based RPG with a decent level-up system, skill trees, eqiupment system, etc... using TI-Basic during math class, but I have no experience with optimizing online functions with programming languages.
Report Spam   Logged

Creator and leader of SMBO Union!

YTC: http://www.youtube.com/user/Penguin4478/videos
Card List and Recipes 100% Complete!
Kimimaru
Owner
Super Mario Bros. Online Creator
*****
Offline Offline

Posts: 883



View Profile
Badges: (View All)
Tenth year Anniversary Nineth year Anniversary Eighth year Anniversary
« Reply #9 on: September 21, 2013, 03:35:45 pm »

Rarely will something you code ever be completely optimized; there is no such thing as completely optimized for things like collision detection.

Should I start on the base engine? I feel that will help you guys get a feel for it. Don't even worry about the server for now; just work on the client.
Report Spam   Logged
jdaster64
Global Moderator
*****
Offline Offline

Posts: 486


FINALLY learned how to block POW blocks in MKWii


View Profile
Badges: (View All)
Third year Anniversary Level 4 Windows User
« Reply #10 on: September 21, 2013, 07:06:53 pm »

If you feel up to it; I won't have a ton of extra time until a week from Tuesday, but I would definitely be able to mess around with things.

On the note of collision, how were you thinking of handling attacks with the pixel-based motion system?
Report Spam   Logged


First to get all 47 cards, all in inventory
SIX maxed characters at level 75!
Check out my updated suggestions thread here!
Kimimaru
Owner
Super Mario Bros. Online Creator
*****
Offline Offline

Posts: 883



View Profile
Badges: (View All)
Tenth year Anniversary Nineth year Anniversary Eighth year Anniversary
« Reply #11 on: September 21, 2013, 11:29:17 pm »

A simple hitbox and hurtbox system that most games use will get the job done easily. I won't be including attack collisions, though, just movement collisions with the game world. You don't really need to worry much about them in battle though, just the overworld. Also, action commands will be much easier to implement and if coded flexibly you'll be able to make them use any key on the keyboard you wish (Hint: assign an action command object, which can consist of a timing and key, to each attack in battle).
Report Spam   Logged
Segatendo
Forum Designer
*
Offline Offline

Posts: 341


I'm Kooper, kooper the koopa.


View Profile WWW
Badges: (View All)
Fifth year Anniversary Fourth year Anniversary Third year Anniversary
« Reply #12 on: September 21, 2013, 11:51:31 pm »

I looked at and tried programming once, as it is something I always thought would be interesting to do. Unfortunately I never was able to master it and nothing ever seems to stick with me regarding it though.


Other than that, the idea sounds good.
Report Spam   Logged

Kimimaru
Owner
Super Mario Bros. Online Creator
*****
Offline Offline

Posts: 883



View Profile
Badges: (View All)
Tenth year Anniversary Nineth year Anniversary Eighth year Anniversary
« Reply #13 on: September 22, 2013, 12:06:59 am »

It's something you have to do a lot of, Segatendo. Very few can even consider themselves an expert at it, let alone a master. Hardly anyone would be considered an expert in a programming language even with 5-10 years of experience. Most of what you learn in programming actually comes from working on something and finding solutions to problems you encounter. You will often have to look at algorithms and other pieces of code numerous times to figure out what's going on and fix problems, but if you write good comments it'll make your life a lot easier.

Don't let it discourage you from helping out with this project. You all can work and learn together!

Like hydra, I'll also be available if you guys need help. Send me a PM on these forums or on Chatango. As long as its not something very time consuming, I should have no problems helping.
« Last Edit: September 22, 2013, 02:29:23 pm by Kimimaru » Report Spam   Logged
mariofan13
Koopa Troopa
***
Offline Offline

Posts: 131


OBJECTION! That is not a mushroom!!


View Profile WWW
Badges: (View All)
Third year Anniversary Level 4 Windows User
« Reply #14 on: September 23, 2013, 01:48:27 pm »

This is something I thought would never see happen. This is what I get for disappearing for long I guess. Anyway I like this idea. But as for contribution from me I doubt I could give you any. I have no experience or talent in programing as of right now. But I can give you guys support for this project. I wish you the best of luck!
Report Spam   Logged

Pages: [1] 2 3 4
  Print  
 
Jump to:  

Powered by EzPortal
Bookmark this site! | Upgrade This Forum
SMF4Free.com - Create your own Forum

Powered by SMF | SMF © 2016, Simple Machines
Privacy Policy