Question about coding and H-games

Post and discuss creative ideas

Question about coding and H-games

Postby whodaman » Fri May 31, 2013 6:37 pm

I was thinking about learning how to code in flash, then I thought, wait, how many good or at least decent h-games are made in flash, as2 or as3, and figured it might just be better to ask the differences between coding as3 and as2, and any other heavy coding languages that are used as a common h-game platform(?).
I don't think any of the VX'es apply, but i am not sure at all, since I am beginning to poke my head into it.
Any help or advice is greatly appreciated!
whodaman
 
Joined: Wed Mar 13, 2013 12:01 am
Location: Somewhere in AZ

Re: Question about coding and H-games

Postby IrrelevantComment » Thu Jun 06, 2013 12:13 am

Can you clarify what you are asking?
IrrelevantComment
 
Joined: Tue Mar 15, 2011 7:46 pm

Re: Question about coding and H-games

Postby whodaman » Thu Jun 06, 2013 12:45 am

I am looking for advice on what language I should learn, and I was thinking of figuring out which would be the best for certain types of h games, and how many h games are made on that language.

To simplify, what language would best suit an h-game based on:
rpg text-based adventure
2d platformer
2d side scrolling fighter
3d platformer
3d side scrolling fighter

Another question is, is there heavy coding in rpg maker? When I say heavy coding, I mean do you actually have to create a code, or does rpgmaker do the hard stuff for you? I do know game maker there is some light scripting required, but it is not like making your own program in java, c#, C++, etc, etc.

Edit: Just thought of a simple way to state the above question. Do you have to write any code in rpg maker? or is it all automated?
whodaman
 
Joined: Wed Mar 13, 2013 12:01 am
Location: Somewhere in AZ

Re: Question about coding and H-games

Postby BlueLight » Thu Jun 06, 2013 1:17 am

Java can is more suited to Text based than flash but i believe any C based language would work.

graphically you can get moving really fast with flash... because anyone that uses flash is a cheater >: |
anything 2D Java should do well but it is powerful enough for 3d.

C++ is the standard for game making.
C# i don't know about.

RPG maker is automated to a point until you find out they didn't program something so now you have to learn ruby and programming it your self.
User avatar
BlueLight
Gangs n' Whores Developer
 
Joined: Sat Jun 04, 2011 8:23 am

Re: Question about coding and H-games

Postby whodaman » Thu Jun 06, 2013 1:34 am

So rpg maker is in the same boat as game maker, well, maybe besides the language. Thanks for the help.
whodaman
 
Joined: Wed Mar 13, 2013 12:01 am
Location: Somewhere in AZ

Re: Question about coding and H-games

Postby LoneWolf » Thu Jun 06, 2013 6:40 am

BlueLight Wrote:graphically you can get moving really fast with flash... because anyone that uses flash is a cheater >: |

That's because Flash isn't really a programming language - it's an animated vector-graphics format. It stands to reason that it would be good for making animations... ;)
Or, at least, it was originally made as an animation format. It's being steadily wrenched into something more like a game-making language, since Adobe was smart enough to jump on the Flash-games bandwagon. At this point I'm not sure what to class it as, but it's probably not the best choice for anything text-based.

I personally like Java for simple-to-moderate stuff (i.e. everything I'm good enough to do so far...). I've found that I can get things up and running quicker in it than in C or C++. If you really need performance, you'd want to go to a low-level compiled language (probably C++), but even then it's not too bad. From what I understand Python is good for quick-and-simple programming too, but I've yet to learn it.

Like Blue says, C++ is the standard for games. It's powerful, cross-platform, and you can do pretty much anything in it; but it's also much more 'dangerous' than most languages. Generally, when the designers had a choice between 'hold the programmer's hand' and 'don't get in his way if he knows what he's doing', they went with 'don't get in his way' - which means that when you shoot yourself in the foot, it's entirely possible to blow your whole leg off.

C# is Microsoft's version of a C-based language. It adds more of the convenience features that make high-level languages useful and protect you from some of your mistakes - garbage collection being a big one - but is a proprietary format. Useful if you want to program specifically for Windows.

Objective-C is broadly similar to C#, just replace 'Microsoft' with 'Apple'.

Overall, I'd recommend Java for anyone who actually wants to get their hands dirty programming, and something like RPG maker for people who'd just like to make a game without having to deal with the fuss. (Flash is popular enough that it probably also deserves mention ... but I have an irrational dislike for it, so I'm going to leave it out. :twisted:)
Cogito, ergo... something.
LoneWolf
 
Joined: Sat Aug 13, 2011 5:37 pm

Re: Question about coding and H-games

Postby BlueLight » Thu Jun 06, 2013 7:13 am

Here, i'll do the rant for you.
Flash is a slow and unreliable piece of software that is blatantly clear as having a language shoved into. It's annoying and lacks creative control to the user for basic functions like right clicking. I hear they're latest version fixed that but then you have the problem where people's can't use these basic function because they don't have the correct version because it's going to cost them 500$... again !
User avatar
BlueLight
Gangs n' Whores Developer
 
Joined: Sat Jun 04, 2011 8:23 am

Re: Question about coding and H-games

Postby whodaman » Thu Jun 06, 2013 8:44 am

To bolster the anti-Flash tirade: http://www.newgrounds.com/portal/view/609286

I had another one, but 404: excuse not found.
whodaman
 
Joined: Wed Mar 13, 2013 12:01 am
Location: Somewhere in AZ

Re: Question about coding and H-games

Postby LoneWolf » Thu Jun 06, 2013 9:31 am

I like using knives as metaphors.

C would be a super-charged industrial chainsaw, Java is one of those big kitchen knives, and something like RPG maker is a kit-set where all the cutting is done already and you just pop the pieces out of the frames. Flash is a sharpened spoon.

You have to give the Devil his due, though. As I understand it, it got popular in the first place because it actually did the job, even if it wasn't designed for it. Java applets were designed for it, but the first versions were so bad that they were even worse than repurposing Flash to do it ... and now 'everybody knows' that Flash is how you make web games, so we're stuck with it.

Edit: so since we're all agreed on that, why don't we have any Java games on LoK yet? (In my case, it's because I signed up ages ago but only recently returned to the forum. And so far I've been too lazy to start a project of my own, so I'm going to blame everyone else instead. :roll:)
Cogito, ergo... something.
LoneWolf
 
Joined: Sat Aug 13, 2011 5:37 pm

Re: Question about coding and H-games

Postby IrrelevantComment » Thu Jun 06, 2013 7:58 pm

Flash has been misrepresented somewhat. Firstly it's worth noting that it's possible to create Flash games without buying anything from Adobe, using pure AS3 and an IDE like FlashDevelop (side note, as the standard IDE for the world's most popular language, Eclipse is disgusting compared to FD or MSVS).

Here are the advantages of Flash over other heavier languages:
- Easy to create games
- Built in graphical editor
- Native support for vector graphics
- Easy deployment of games (games can run in the browser or on the desktop without an install)
- Built in library designed for RIAs such as games.

As for AS2/AS3, the advice I was given when I started to learn was "Learn AS3 if you are clever, learn AS2 if you are lazy." AS3 is slightly harder to program in, because it forces you to adhere to at least some good programming principles, but it's more powerful, more up to date, has more features (ie right click functionality) and is still being updated whereas AS2 is not obsolete.

I program in both C# and AS3, and I would say that if you want to make the sort of games you find on this site then Flash is definitely the way to go. Heavier languages are good for more complicated games, but why use a chainsaw or a kitchen knife to eat your cereal when you could use a sharpened spoon?
IrrelevantComment
 
Joined: Tue Mar 15, 2011 7:46 pm

Re: Question about coding and H-games

Postby Thaedael » Thu Jun 06, 2013 8:55 pm

AS3 is better if you aren't stuck in the rigid old ways of AS2. The ability to manipulate vectors freely, as well as animate them is amazing. There is also the fact that flash loads fast enough, even with huge games.
Thaedael
 

Re: Question about coding and H-games

Postby jerkface » Sun Jun 09, 2013 9:34 am

If you want to be able to make any game you can imagine you will need to know these languages:
C/C++ (Core systems. Allows you to craft raw bits as you will.)
Java/Python (Game logic. Relatively easy to program in and has every feature you need. Standard scripting languages for most games. I prefer Python because Java is a buggy shitfest.)
GLSL/HLSL (Graphical effects. Create every graphics effect you need and make sure it takes advantage of all graphics hardware available.)

If you want to make a simple RPG:
RPG Maker. Congrats, you have all the tools you need to make the exact same RPG thousands of other people have. I think it uses Ruby as its scripting language.

If you want to make an RPG that people haven't seen a billion times before:
Unity or Flash. Unity for larger, more ambitious projects. Flash for smaller ones.
Basically you need to program your own movement and battle systems if you want your game to stand out.

For a 2D platformer:
Flash is easy to get one going and it'll look good because of the vector graphics, but your levels will have to be small because Flash is really slow and you'll struggle with the physics.
Unity is nice because it already has a good physics engine working, but you'll need actual programming knowledge to do anything.
The same can be said for 2D sidescrolling fighters. But I'd really advise you not to make one because it's insanely difficult to get the controls to feel right, and the feel of your controls basically determines the success of a fighter.

3D Platformer:
Unity. Hands down. There is no other premade engine that can handle a 3D platformer so well as Unity. Not even Source or Unreal because they make a huge amount of assumptions that only make sense in first person shooters.
User avatar
jerkface
 
Joined: Thu Jun 06, 2013 10:16 am

Re: Question about coding and H-games

Postby Jesus » Fri Jun 28, 2013 7:57 am

DO NOT LEARN C++ OR C

It may seem like a fine idea because "C++ is what the pro's use" but it's like ridiculous if your new to programming, and against the better judgement of others I went ahead and did it. I don't really use my television for anything other than playing games (and it takes something really different to catch my eye) or watch many shows so the general time frame it took me was probably shorter than others. C++ is a hybrid object orientated but not as high a level language purely object orientated as something like Java, or C#. You really don't need to learn that the << symbol is used to concatenate strings or variables, which is really an overloaded bit-shift operator, and C sucks, the book is to my right and as useful as learning it is, it's like walking through the land of dinosaurs and old world wonders.

Basically you'll end up learning things you don't really need (like inheritance, and maybe dimensional arrays, the difference between static and dynamic what-its, etc ) if your just going to make a game.

If you choose Java and javascript, they are very different. Javascript is good for short simple tasks but doesn't nearly compare to the flexibility you'll get from java, however it's faster to learn. That and Java has this shit thinking it knows better than you.

In my opinion you should learn both just because you will find a mass amount of help and I don't think it would be terribly hard, if you really want to learn C++ learn a BASIC language (it's a programming language not like i meant a "basic" language) and then learn C++, just because I think the hardest part of programming is the logic and everything else comes easier (like math the hardest part is adding, subtracting, dividing, and multiplying, everything else is just a variation).

AS3 and AS2 I don't really know enough about, I'm new to the forums (sort of, I lurked for the longest time and made my account today).

Unless you feel like becoming artist you may want to stay away from 3dcg. Otherwise read the 4chan sticky and ask for help from the 3dcg board there, don't mention your looking to create a game though. You also might want to start drawing, it helps, alot. Otherwise I think you could scrape by with LuxRender and Opengl but don't really know, then unity or UDK would probably be your engine.
User avatar
Jesus
 
Joined: Thu Jun 27, 2013 8:21 pm
Location: Unknown island (help me!)

Re: Question about coding and H-games

Postby BlueLight » Sat Jun 29, 2013 11:05 am

I hear some one picking on some important programming concepts.
Jesus Wrote:Basically you'll end up learning things you don't really need (like inheritance, and maybe dimensional arrays, the difference between static and dynamic what-its, etc ) if your just going to make a game.


... you have just listed all very important things. Inheritance while "not needed" is like saying String aren't needed because you have char.
Dimensional arrays... Best thing ever made.... God i love my
Code: Select All Code
ArrayList<Actor>[][] AL;
call. Really need to change that to just a Actor[][] actor map; call since I'm not needing to store anything in 3 dimensions anymore. Knowing the difference between static and dynamic (You guys call it dynamic?... i just call it... not static... or normal state... i don't call it anything god java dammit!) can make your program smoother in it's operation. Global variables I believe are basically static variables. Java doesn't officially have "global" variables so i'm not sure.
User avatar
BlueLight
Gangs n' Whores Developer
 
Joined: Sat Jun 04, 2011 8:23 am

Re: Question about coding and H-games

Postby Jesus » Sun Jun 30, 2013 6:00 pm

I forgot to mention there are 8 different ways to do everything, and 5 of them are dated and 2 are bad (memory leakage and garbage bugs the crap out of me). I think I used inheritance (and polymorphism) in my first (and only) game, which wasn't even a game, it was this kind of grid based thing where you shoot a zombie, move to the body and take what's on it then you have to open the task manager and end it, it didn't take long for me to delete it.

Only after browsing some other places did I find out I could not only be unhappy with games for the story, but the programming too, but to be honest coding really isn't been something I've done doing for a while, I guess 6 months if you count when I bought the first book including the long time inbetween that and reading them, I was actually going to a forum to ask for help and found out that I knew enough to help other people by fixing their code and figured I had learned quite a bit.

Static I always considered the normal one because it doesn't change but I see how dynamic could be the normal one. C and C++ I don't think have a global variable either, the closest thing might be declaring a function as public.

But I have to ask, do you talk to yourself when you program? I do alot and feel like it's weird, but I don't think I'm alone in this.
User avatar
Jesus
 
Joined: Thu Jun 27, 2013 8:21 pm
Location: Unknown island (help me!)

Re: Question about coding and H-games

Postby jerkface » Sun Jun 30, 2013 8:11 pm

Jesus Wrote:I think I used inheritance (and polymorphism) in my first (and only) game


Inheritance can be good in certain cases. Specifically when you want to manage multiple types of objects in one area. For example: in a physics engine there are multiple ways to store collision data so you have a base Collider class and then have BoxCollider, SphereCollider, etc inherit from it. That way your physics engine can keep track of Colliders and not worry about what type they are. However, encapsulation is generally a better choice if you don't need to do something like this.

Jesus Wrote:Static I always considered the normal one because it doesn't change but I see how dynamic could be the normal one.


The static keyword has a special use for classes. Marking an object as static inside a class means that all classes will share that object rather than have their own copy of it.

Jesus Wrote:C and C++ I don't think have a global variable either, the closest thing might be declaring a function as public.


C and C++ definitely have global variables. It's just that using them is generally a horrible idea and most CS professors will go apeshit on any student turning in a project that uses them. But why is using them bad? Because you'll run into those variable names again later and it will be frustrating as all hell to program around. Don't even get me started on macros.

Jesus Wrote:But I have to ask, do you talk to yourself when you program? I do alot and feel like it's weird, but I don't think I'm alone in this.


I think each person has that one thing that will help them concentrate. I personally stand up and start pacing when I really need to think about something.
Programming languages I know and use on a regular basis: C/C++, Python
Programming languages I'm familiar with: Java, Basic, BASH, Batch, Assembly, GLSL
I can probably figure it out in a little bit so long as it isn't: Lisp
User avatar
jerkface
 
Joined: Thu Jun 06, 2013 10:16 am

Re: Question about coding and H-games

Postby Jesus » Sun Jun 30, 2013 9:29 pm

The static keyword has a special use for classes. Marking an object as static inside a class means that all classes will share that object rather than have their own copy of it.


I was thinking static arrays not declaring something as static.

This thread has successfully been derailed.
User avatar
Jesus
 
Joined: Thu Jun 27, 2013 8:21 pm
Location: Unknown island (help me!)


Return to Discussion



Who is online

Users browsing this forum: No registered users