At 5/29/12 03:37 PM, ProfessorFlash wrote: Anyone playing Diablo 3?
Of course. Mid-50 WD, haven't played in a few days cause the servers have been shit. Just started hell. You?
HO HO HOPE you become a Newgrounds Supporter this year!
We're working hard to give you the best site possible, but we have bills to pay and community support is vital to keep things going and growing. Thank you for considering!
At 5/29/12 03:37 PM, ProfessorFlash wrote: Anyone playing Diablo 3?
Of course. Mid-50 WD, haven't played in a few days cause the servers have been shit. Just started hell. You?
At 5/29/12 03:48 PM, Sam wrote:At 5/29/12 03:37 PM, ProfessorFlash wrote: Anyone playing Diablo 3?Of course. Mid-50 WD, haven't played in a few days cause the servers have been shit. Just started hell. You?
I got 3 heroes at early hell, act1-2, wiz 55, dh 54, barb 52. Starting to feel like a pain cuz every elite group kills me min 2 times, sometimes I had to revive 8 times in a row... lol :D
You can solve pretty much any problem you may have with AS3 by consulting the AS3 Language reference.
At 5/29/12 03:50 PM, ProfessorFlash wrote:At 5/29/12 03:48 PM, Sam wrote:I got 3 heroes at early hell, act1-2, wiz 55, dh 54, barb 52. Starting to feel like a pain cuz every elite group kills me min 2 times, sometimes I had to revive 8 times in a row... lol :DAt 5/29/12 03:37 PM, ProfessorFlash wrote: Anyone playing Diablo 3?Of course. Mid-50 WD, haven't played in a few days cause the servers have been shit. Just started hell. You?
Yeah, difficulty shot up after Leoric in Hell. Sort of glad, but it's a pain to keep dying over and over just to take out a blue mob.
At 5/29/12 06:46 PM, Sam wrote: Yeah, difficulty shot up after Leoric in Hell. Sort of glad, but it's a pain to keep dying over and over just to take out a blue mob.
Found a really nice one handed sword last night which had more dps than my current two handed. So doing pretty good currently with my barb who atm is my strongest hero. Good gear really makes a big difference.
You can solve pretty much any problem you may have with AS3 by consulting the AS3 Language reference.
So Tommy Refenes (programmer behind Super Meat Boy) thinks I'm an idiot.
Well, he didn't exactly say that, but I asked a question here: http://www.formspring.me/Tommunism and below is the Q/A
Q:Was there any specific reason you chose C++ for SMB? It just seems to me that when creating a 2D game, you can really get everything you'd ever dream of, using other languages (like Lua, or heck, even Flash) but get it all done much faster.
A: I've typed like 9 responses to this question and deleted them because I don't know how to answer your question in any way that makes sense so I'm just going to go with this one:
You don't understand programming languages my friend:)
Fair enough. I still pose the question, why make a game in 12 months using C++ when you can get pretty much the same exact stuff done in a number of other languages or tools, but get it done much faster and easier?
When you're making a 2D game, I can't imagine a lot of stuff that can't be done in even Flash. And there *are* some games made in flash on Steam. I mean, sure, maybe flash is shitty for larger projects, but that's something that boils down to your preference of tools.
It's like making a game in a game maker. I used to look down on any sort of game maker until I played "To The Moon" which is one of the best games I have played. Then I realized, if there's an easier way to get the job done, why not do it?
Thoughts?
At 6/2/12 10:23 AM, 4urentertainment wrote: Thoughts?
If there are multiple languages that can get the job done, then you should use the one that you are most comfortable with. I don't think there is right or wrong in that kind of situations. Just my 2 cents.
You can solve pretty much any problem you may have with AS3 by consulting the AS3 Language reference.
He's right in a sense. C++ is great. It's low-level. It's performant. It's cross-platform. I think it's safe to say that SMB in it's current form would be impossible to make with flash. The performance would be horrible. I realize theres a flash version, but it's not as fancy as the retail version.
Using a framework like love (LUA), or some other framework is fine in some cases. A game like SMB needs to be developed with total control. It's a very fast paced game, which means performance is very important. Controls are very important too. A game like to the moon is mostly story-driven. Controls and performance are less important.
SMB could not have been ported to the Xbox either if it was written in one of these languages.
I think his response was pretty rude, but either way -- thats my take on it.
At 6/2/12 02:22 PM, PrettyMuchBryce wrote: He's right in a sense. C++ is great. It's low-level. It's performant. It's cross-platform. I think it's safe to say that SMB in it's current form would be impossible to make with flash.
I'm not sure why you think that.
Considering the performance improvements you get with Stage3D, it would be more than viable to run in flash.
At 6/2/12 03:40 PM, P4INKiller wrote:At 6/2/12 02:22 PM, PrettyMuchBryce wrote: He's right in a sense. C++ is great. It's low-level. It's performant. It's cross-platform. I think it's safe to say that SMB in it's current form would be impossible to make with flash.I'm not sure why you think that.
Considering the performance improvements you get with Stage3D, it would be more than viable to run in flash.
I personally haven't looked much into Stage3D so disregard this comment if it's completely false.
I really doubt Stage3D brings such a performance boost that it becomes on par with a low level language such as C++. 3 of the main things to consider when picking a language: How fast is it? How available is it (i.e. cross platform, widespread in terms of players when talking about Flash, Unity etc)? Which languages is the programmer proficient in?
I'm sure when designing SMB, Tommy picked C++ after answering the questions that he would have had to answer. C++ is low level and fast, you can even write Assembly in-line with C++ if need be for an even larger performance increase (compilers are never perfect). C++ is cross platform, and obviously with its roots in C, it doesn't make it that difficult to be able to rewrite the game to other languages with similar syntax (as well as a lot of APIs for graphics and sound being available for popular languages) if a parser isn't used. He must have felt confident enough to be able to write SMB in C++ or it would have never been finished.
I don't the question answered was particularly a bad one, and it was worth being in there. I think the answer was a bit crude and perhaps it could have been handled better (and it would have been nice hearing the reasoning he went through when deciding).
At 6/2/12 10:23 AM, 4urentertainment wrote: Q:Was there any specific reason you chose C++ for SMB? It just seems to me that when creating a 2D game, you can really get everything you'd ever dream of, using other languages (like Lua, or heck, even Flash) but get it all done much faster.
Don't forget as well that Super Meat Boy isn't just a platformer. They had to deal with screen resolutions, online scoreboards, and things that aren't very easy with Flash (there are better examples, I'm sure, but I can't think of them at this moment). Also, if it had been made in Flash, there's no way it would run at an acceptable speed on my laptop.
According to the internet,
http://www.reddit.com/r/gaming/comments/sckwj/why_i_dont_rea lly_mind_when_super_meat_boy_crashes/
http://www.reddit.com/r/gaming/comments/nov42/super_meat_boy _level_database_access_left_open_to/?limit=500
C++ and Lua are languages, you can pick what graphical/game environment to attach to them. (Now you can sort of pick which part of Flash graphics output to use with your AS3 too.)
AS3 has enough 'perfomance' for a platformer (SMB has up to like three moving pieces), but you could want a better environment so your game doesn't stutter when you have millions of particles floating.
At 6/3/12 04:10 PM, fixplz wrote: According to the internet,
http://www.reddit.com/r/gaming/comments/sckwj/why_i_dont_rea lly_mind_when_super_meat_boy_crashes/
http://www.reddit.com/r/gaming/comments/nov42/super_meat_boy _level_database_access_left_open_to/?limit=500
C++ and Lua are languages, you can pick what graphical/game environment to attach to them. (Now you can sort of pick which part of Flash graphics output to use with your AS3 too.)
This is pretty inherently false. I wouldn't use reddit as a source for any credible information. Flash runs through a virtual machine, and it's performance limitations are very well known. You could never reach anything like native speed in flash, let's just be honest about that. It's main advantage is it's penetration in the browser. LUA is a scripting language and the context in which it is used does depend on the framework. I know less about LUA, so I won't comment there.
C++ is compiled to machine code. There is so much you get with native development. Outside of performance, there really is just far more control.
I'm not arguing against trying other things. I think if you have the right type of game, and it saves you time, then you should absolutely do it. Just be aware of your limitations. There is good reason why almost every successful game on consoles and smartphones is written in native code.
The first Reddit thread is people discussing technical issues in SMB that haven't been fixed because people should buy new computers instead according to Refenes. The second is a guy making an obvious hack to modify the scoreboard after warning him.
Reddit is the nicest general community on the internet, for context. It has more technically competent people in a casual context than any section on Newgrounds.
The paragraph you quoted is a factual statement. I don't know what you're trying to correct. Read it again; you should understand it.
At 6/2/12 02:22 PM, PrettyMuchBryce wrote: SMB could not have been ported to the Xbox either if it was written in one of these languages.
Thats what Refenes said when I posted a follow up question insisting on an answer. And that's the only good reason why you might want to use C++. But that's still slightly subjective. I don't know if C++ runs on mobile platforms or not (I'll assume not) so in the case you want to simultaneously develop for PC/Mac/Linux, web *and* mobiles, flash could be useful here.
He's right in a sense. C++ is great. It's low-level. It's performant. It's cross-platform. I think it's safe to say that SMB in it's current form would be impossible to make with flash. The performance would be horrible. I realize theres a flash version, but it's not as fancy as the retail version.
But that's the thing. Sure, C++ will always be faster than flash. But you'll never really see that performance difference unless you're doing something really extreme. I think Super Meat Boy, in its current form, with the right optimization can be done in flash *without* even using Stage3D. But assuming you're using it and then there would be absolutely no problem.
In fact, unless you really know what you're doing, C++ could actually hinder your performance. When I was experimenting with it for a few months I was shocked to first see that my engine lagged when I tried to rotate something when I was rendering with SDL. The solution? Implement a giant 3D engine for rendering, that is openGL.
Okay, that's cool, so I implement openGL. And now I'm getting some really good performance, but I test the limits of the engine and apparently after 2000 moving objects it starts to lag. So what gives? I was apparently using something called "immediate mode" in openGL, and the solution was to implement various different different rendering techniques.
Now of course this was my fault for not actually spending time to learn openGL fully before diving in, but there's no shortage of "my game lags" threads on C++ forums. Other tools just tend to hold your hand more if you want to focus more on the actual game and not just the code.
The reason I decided it wasn't going to be a good idea to make a game in C++ was because it was going to take a *lot* of time and effort, and even when it was completed, I could look back and see that I could have done multitudes the amount of work in Flash.
Don't forget as well that Super Meat Boy isn't just a platformer. They had to deal with screen resolutions, online scoreboards, and things that aren't very easy with Flash
The fact that Flash doesn't give you much control on screen resolutions is another reason why you might not want to use Flash, but pick up Lua or something of that nature and you're good to go.
I'm not arguing against trying other things. I think if you have the right type of game, and it saves you time, then you should absolutely do it. Just be aware of your limitations. There is good reason why almost every successful game on consoles and smartphones is written in native code.
So that exactly sums it all up. As long as whatever you plan on doing will never go beyond those limitations, then using the easier tool will ultimately result in a much better game.
You can also use Haxe, its an emerging language similar to flash but more strict and optimized. Better still it won't hold your hand and bind you to flash format; you can compile to C++, AMV bytecode, js and more.
Even for just flash it has proven to compile more efficient code than actionscript can.
You can make a game and compile it as a flash for the web, after that with the same code you can compile for android.
I see it as the future for there may be a day where flash is dead.
At 6/4/12 07:41 AM, Sandremss128 wrote: You can make a game and compile it as a flash for the web, after that with the same code you can compile for android.
With NO modifications to the code at all?
At 6/4/12 09:29 AM, Sam wrote:At 6/4/12 07:41 AM, Sandremss128 wrote: You can make a game and compile it as a flash for the web, after that with the same code you can compile for android.With NO modifications to the code at all?
Using NME, one can target multiple platforms without modifying the source code.
At 6/4/12 10:08 AM, Tree-SkyLark-BCE wrote:At 6/4/12 09:29 AM, Sam wrote:Using NME, one can target multiple platforms without modifying the source code.At 6/4/12 07:41 AM, Sandremss128 wrote: You can make a game and compile it as a flash for the web, after that with the same code you can compile for android.With NO modifications to the code at all?
yeah nme is really good at that. When I said the same code I mean the 99% of the logic code and rendering. Its possible that you have to rewrite the input for mobile for example since mouse input won't work for that, as well as some other little things along the way.
It's really powerful and works really well.
At 6/4/12 12:22 PM, Sandremss128 wrote:Using NME, one can target multiple platforms without modifying the source code.yeah nme is really good at that. When I said the same code I mean the 99% of the logic code and rendering. Its possible that you have to rewrite the input for mobile for example since mouse input won't work for that, as well as some other little things along the way.
It's really powerful and works really well.
Yeah, haXe is brilliant. The only reason I'm not using it right now is that it feels there's not enough support for it out there. Currently the only one who answers questions on the NME forums is the creator himself (or I think he is one of the people who created it, can't be sure). Like I feel there's not enough of a documentation there. There is one but it just lists all the functions and API's, doesn't really tell you what they do or give examples on using them, and because not a lot of people use haXe in the first you'd be hard pressed finding that one guy that wrote a blogpost about that nifty code feature.
Another example is when I made a dummy iPhone app just to see how awesome it would be to compile to iOS with haXe, and it worked. But when I tried using device-specific functions like the iOS's alerts or so there wasn't much on NME saying what to do in that case, and it turns out I had to either find someone who wrote an extension to do that (written in the target device's native language I believe) or write one myself. And since I was using haXe so I can avoid using objective-c that defeated the purpose for me a bit.
So I think haXe is really an easier way to develop cross platform, not a method if you can't otherwise do so. Such that when you come across problems such as this, you can dig into the source code and hack your own solutions.
I hear a lot about haxe for a few years now, but why is it I've never seen anyone use it? Are there any real commercial examples of successful haxe games?
At 6/5/12 02:57 AM, PSvils wrote: Of course! There have been several bigger Flash games made with it, though I can't exactly remember which ones (AFAIK), and for more you can see a showcase:
http://www.haxenme.org/showcase/
'Tis not hard to findeth.
You've spiked my interest.
Gonna have to take a look at this now.
I updated the example file on my EasyStarAS3 API.
https://github.com/prettymuchbryce/EasyStarAS3
I have a few features I want to implement next.
- Diagonal movement
- Ability to process multiple paths at once
- Revamping the way I handle avoiding additional tiles
I also want to fix up the tutorial in the markdown. I don't know. I'm very open to ideas on how to make this easier to use. Someone suggested that requiring vector.<vector.<uint>>'s might be confusing to some people. I'm not sure how to avoid that. Knowing how to set up a 2D tilemap might be a prerequisite for using the API.
At 6/6/12 08:54 PM, PrettyMuchBryce wrote: I also want to fix up the tutorial in the markdown. I don't know. I'm very open to ideas on how to make this easier to use. Someone suggested that requiring vector.<vector.<uint>>'s might be confusing to some people. I'm not sure how to avoid that. Knowing how to set up a 2D tilemap might be a prerequisite for using the API.
You could ask for an array and force the user to call a function (or run it during the set method) that loops through the array and gives the values to a new VecVecUint. Type-check each value and throw an error.
At 6/6/12 08:54 PM, PrettyMuchBryce wrote: I updated the example file on my EasyStarAS3 API.
https://github.com/prettymuchbryce/EasyStarAS3
I was going to make my own A* API eventually, but since you're already making one, here's what I was going to do.
The thing about pathfinding algorithms, and I think the reason I can only name a couple of flash games that have some form of path finding, is that most people tend to be intimidated by the fact that their game would need to be all tile-based or they would have to learn how to use tile maps.
But the thing is, you don't need the game to be tile based to get your algorithms working. Even in a heavily art based game where the levels are drawn by hand, you could just let the programmer specify a movieclip or a bitmap that would have the shape of the ground of that level, and you'd just uniformly place nodes in a grid over all the level and remove the nodes that are touching the ground.
It's simple, it's incredibly intuitive, works for all kinds of games and is super easy to use.
I'm looking forward to participating in Game Jam 7 in a few weeks, it'll be my first chance in a long to be productive on things that I actually care about, like programming gaemz. I'm excited.
Also, every single one of you needs to take some Coursera computer science classes. I'm in a machine learning class right now and I love it.
I used to think A* was the shit, until I took a neural network to the knee
At 6/9/12 06:00 PM, Archawn wrote: Also, every single one of you needs to take some Coursera computer science classes. I'm in a machine learning class right now and I love it.
Same thing with Saylor (I haven't used it yet, but hopefully either gives me an edge in my curric :)) <- how do you end a parenthetical with a smiley?
At 6/9/12 07:53 PM, MSGhero wrote:At 6/9/12 06:00 PM, Archawn wrote: Also, every single one of you needs to take some Coursera computer science classes. I'm in a machine learning class right now and I love it.Same thing with Saylor (I haven't used it yet, but hopefully either gives me an edge in my curric :)) <- how do you end a parenthetical with a smiley?
While we're on the subject of free online classes, mentioning Udacity once again seems appropriate. (And come on, who can't resist Sebastian Thrun? :))
I might try starting a team for their "High School Challenge" to get some of my friends more interested/involved in computer science.
On a side note, when I rolled over my last post and saw this, for an instant I thought Newgrounds had finally implemented an edit button.
But to my disappointment it was only a misplaced "Edit Signature" button
Heyoz, I've been kicking around the Flash forums for a while, so I figured I'd say hi!
I'm not all too familiar with AS3 (actually, I've only been learning C++ for about a month, and I'm finally starting to get a hang of AS3... kind of), but maybe I'll pick some stuff up from you guys by... osmosis or something?
At 6/10/12 10:34 AM, PSvils wrote:At 6/7/12 08:23 AM, 4urentertainment wrote: by the fact that their game would need to be all tile-based or they would have to learn how to use tile maps.Since when?
I've just always noticed the amount of art based games being larger than the amount of tile based games, and most tutorials and beginners start with art based games.