Only by a little. It's true that we need to begin planning more. Much more. I've been working loads on optimizing the program. It's awesome. I want to make more of a spectacle of new features before I make another release, though.
I've done several things. First, a bunch of internal stuff that only a few of you would understand. Second, I changed the window title, but this is changeable as we still aren't 100% sure yet about the name. Third, I made one last revision to the formatting of xml mappings (check out data/maps/Test.xml to see how I did it). Fourth, I made some beautiful filler art in Paint, the bestest image manipulator on the planet. Fifth, I added a moveable camera. Use the arrow keys to move across the level.
And again, press F5 anytime to reload the map and reassign the camera coordinates.
It looks like a lot because of the psychology involved.
I'll be working more today and I'll let you guys know where I am by the end of the week.
EDIT: Wow, I'm almost ready for another release. I've got a lot more done now. I just want to do something else in addition to what I've got. I know! I'll make more art!
Please experiment with the files data/maps/Test.xml, data/animations/Tree.xml, & data/strings/ex.xml. You can even edit them while the game is running! Just press F5 in-game and it will re-parse all the files, updating the screen.
C++ is a great language. I'd recommend trying HTML and JavaScript first, it's basically an easy version of C++ that doesn't need any fancy compiler or libraries or anything...just a text file and a web browser.
Another Planet finally has an official release! Download chapters 1 through 3 here! Thank you for waiting so long while I kept starting over.
C++ is pretty easy to understand in my opinion. I mean, the only prior knowledge I had was HTML, but that's pretty much the same as XML. Since you're a WoG modder, you should be fine.
JavaScript is essentially C++, with a few differences:
- Everything is of type var or function.
- No pointers!
- No main function, anything that's outside a function (such as variable initializations) is executed as if it were in main.
- Classes are very weird, I still don't understand them.
Another Planet finally has an official release! Download chapters 1 through 3 here! Thank you for waiting so long while I kept starting over.
Classes and all the OOP stuff is sweet when you know how to use it correctly. It can majorly confuse new programmers, though. The route I took was to learn C before C++, which takes away a lot of the OOP stuff before you need it (which you don't need when you're first learning how to program anyway), and gets a lot of the practice out of the way. Javascript then C/C++ sounds like a good idea, too, though.
My computer programming teacher taught us C first as well...after we had learned machine language and assembly language. So definitely no OOP at the beginning.
That was an interesting class. The teacher told us that if we wanted our programs to run as fast as possible it would be incorrect to use "x *= 2" in a for loop. The correct command would be "x = x + x", because it only needed to call two functions (operator = and operator +) instead of three, and addition is faster than multiplication.
Another Planet finally has an official release! Download chapters 1 through 3 here! Thank you for waiting so long while I kept starting over.
What sort of stone age of computing did that teacher live in? A low-end PIC16 can do thousands of multiplication operations in a few milliseconds, and only slightly slower if the multiplication is emulated (No MDU on the board). That's absolutely ludicrous to think that optimizes anything at all. Code optimization is an art, and avoiding multiplication for "optimization" is utter disgrace and contempt to this art.
And machine/assembly language before C? I mean, I guess I see the twisted logic behind that, but that makes too many prerequisites to actual useful programming (Assembly is terribly non-portable to learn at first). Shoot, why not start with transistor theory and electron tunneling, then learn about NAND gates, then learn how to combine all logic into forms of NAND gates, then muxing/demuxing to get the logic you want, then learn about computer architecture to know how the registers and processor work, then how machine code works, then assembly language, and then how C compilers convert C to assembly before learning C? You've got to start someplace. And starting at a higher level and progressing downwards protects you from all the complex math and hackery that goes into making a computer. Whoever thought of the idea to learn assembly before C in this day and age deserves to be stuck in a room full of punchcard computers for the rest of their life.
</rant>
I'm in a class right now with some people who learned C++ before C, and it involves C programming with a PIC32 microcontroller. A lot of people don't understand basic memory management and bit shifting, which is kinda a shame also, so the labs that take me an hour take them a few days. I'd say OOP and easy memory handling with the STL should come after you've used C strings and arrays enough to know to be careful with memory, and know how to structure programs without using tons of huge classes. That way, when you have lots of classes and your program involves code outside those classes, you have a better grasp of what you're doing. And if you choose to join the auto industry and you need to program a microcontroller that controls a certain aspect of the vehicle, you don't feel lost because you can't use C++.
True, I'm not sure when I'm ever really going to be using machine language or x86 assembly for programming.
But my last post was a bit unclear--the only time it was ever considered a priority to optimize the multiplication was when we were trying to get the best integer-sorting algorithm possible. We had to count how many function calls it would use, how many comparisons, et cetera. That was also the only time when it was incorrect to do math on bytes or shorts, because ints would be faster.
EDIT: I think the point of the assembly and stuff was just to show us how complex a simple C program was to the computer. Later we wrote an interpreter for a simple machine language (I think there were 12 instructions total), a simple assembler for it, and a sort of BASIC compiler.
EDIT EDIT:But we're getting really off topic now. Red, are the animations going to have a way to specify which frame is the next one? So, for example, my animation could go 0-1-2-3-4-5-6-7-8-9-5-6-7-8-9-5-6-7-8-9... and only show the first few frames once?
Another Planet finally has an official release! Download chapters 1 through 3 here! Thank you for waiting so long while I kept starting over.
Sorry, that's still ludicrous. For a sort algorithm, you should be more concerned about whether you're making it O(n^2) or O(n*logn) then counting individual operations. That's still really small potatoes.
The idea was to see just how far a given program could be optimized. We started with Bubblesort, which is a very slow but simple algorithm, and tried to add in some check to reduce the number of comparisons, then tried to optimize the number of function calls. Then we did the same with Bucketsort, and eventually Quicksort.
Another Planet finally has an official release! Download chapters 1 through 3 here! Thank you for waiting so long while I kept starting over.
Red, are the animations going to have a way to specify which frame is the next one? So, for example, my animation could go 0-1-2-3-4-5-6-7-8-9-5-6-7-8-9-5-6-7-8-9... and only show the first few frames once?
The specification is different frame elements. The index attribute for each frame specifies the order, going from 0 onward. If you want to have the same part of the image showing for different frames, you would have to just copy the line over and change the value of the index attribute.
Showing particular frames only once? Hmm, I'll get started on that. I'll likely add a boolean attribute to the frame element.
If you're going to be experimenting with the engine, I'd better update it. There are a few limitations as I thought it would just be for show. Having more than 10 frames in a single animation can't happen. I'll get to work on the aforementioned as well. This should release sometime later tonight hopefully (you won't see it until Sunday).
Alright, the engine was updated. The link is in my signature. The animation XML was modified to support frames that would only show during the first cycle. I also fixed the problem with having more than 10 frames in one animation. The limit is now 100. This will be changed once I figure out a better way of allocating memory.
I am 100% open to suggestions and ideas. To be honest, the only thing I have to work on is physics. I don't like focusing entirely on physics. My to-do list needs to be filled!
I believe instead of having a story planned out first
actually have a world created before we even mention a story
You guys said Underground, right?
I'll get to it
True. We are getting ahead of ourselves, aren't we?
Another Planet finally has an official release! Download chapters 1 through 3 here! Thank you for waiting so long while I kept starting over.
i don't think we should have the player talk at all.
601st post
-_-
Only by a little. It's true that we need to begin planning more. Much more. I've been working loads on optimizing the program. It's awesome. I want to make more of a spectacle of new features before I make another release, though.
I tweet like a bird
I have a lame website
Ok, keep it up! As long as something's happening, we're good!
For those wondering, Earth of Goo is still being worked on, but not as often. It will be finished! Check out my website/YouTube @ScarletFury!
RELEASE TIME!
Get It Here
I've done several things. First, a bunch of internal stuff that only a few of you would understand. Second, I changed the window title, but this is changeable as we still aren't 100% sure yet about the name. Third, I made one last revision to the formatting of xml mappings (check out data/maps/Test.xml to see how I did it). Fourth, I made some beautiful filler art in Paint, the bestest image manipulator on the planet. Fifth, I added a moveable camera. Use the arrow keys to move across the level.
And again, press F5 anytime to reload the map and reassign the camera coordinates.
I tweet like a bird
I have a lame website
WOW! You've been busy! GREAT WORK!!
For those wondering, Earth of Goo is still being worked on, but not as often. It will be finished! Check out my website/YouTube @ScarletFury!
good job red!!
good show ol' chap, jolly good show
-_-
Nice!
I like your filler artwork; not bad at all.
IRC | Chapter Tutorial | Reference Guide
Only about one feature was added.
It looks like a lot because of the psychology involved.
I'll be working more today and I'll let you guys know where I am by the end of the week.
EDIT: Wow, I'm almost ready for another release. I've got a lot more done now. I just want to do something else in addition to what I've got. I know! I'll make more art!
I tweet like a bird
I have a lame website
I hate to double-post, but...
Another Release! Get It Here
Animations and Text.
Please experiment with the files data/maps/Test.xml, data/animations/Tree.xml, & data/strings/ex.xml. You can even edit them while the game is running! Just press F5 in-game and it will re-parse all the files, updating the screen.
I tweet like a bird
I have a lame website
Awesome! But...where's the player?
Another Planet finally has an official release! Download chapters 1 through 3 here! Thank you for waiting so long while I kept starting over.
The player will exist when I implement Box2D, and I'm still learning the Hello World code, I'm afraid.
I tweet like a bird
I have a lame website
Very nice! If you have any Box2D questions, feel free to ask.
IRC | Chapter Tutorial | Reference Guide
i am learning how to program via a online course so i can actually help the game. i hope to learn C++
-_-
C++ is a great language. I'd recommend trying HTML and JavaScript first, it's basically an easy version of C++ that doesn't need any fancy compiler or libraries or anything...just a text file and a web browser.
Another Planet finally has an official release! Download chapters 1 through 3 here! Thank you for waiting so long while I kept starting over.
C++ is pretty easy to understand in my opinion. I mean, the only prior knowledge I had was HTML, but that's pretty much the same as XML. Since you're a WoG modder, you should be fine.
Except I never learned Javascript.
I tweet like a bird
I have a lame website
I also study C++ at school. Its not so difficult but I agree with AP, You should try HTML and Javascript first. They're much easier.
| MOM4Evr's chapter tutorial | My addins | Infernofans
JavaScript is essentially C++, with a few differences:
- Everything is of type
var
orfunction
.- No pointers!
- No
main
function, anything that's outside a function (such as variable initializations) is executed as if it were inmain
.- Classes are very weird, I still don't understand them.
Another Planet finally has an official release! Download chapters 1 through 3 here! Thank you for waiting so long while I kept starting over.
Classes and all the OOP stuff is sweet when you know how to use it correctly. It can majorly confuse new programmers, though. The route I took was to learn C before C++, which takes away a lot of the OOP stuff before you need it (which you don't need when you're first learning how to program anyway), and gets a lot of the practice out of the way. Javascript then C/C++ sounds like a good idea, too, though.
IRC | Chapter Tutorial | Reference Guide
at first my OOP's will be oops..
-_-
My computer programming teacher taught us C first as well...after we had learned machine language and assembly language. So definitely no OOP at the beginning.
That was an interesting class. The teacher told us that if we wanted our programs to run as fast as possible it would be incorrect to use "x *= 2" in a for loop. The correct command would be "x = x + x", because it only needed to call two functions (operator = and operator +) instead of three, and addition is faster than multiplication.
Another Planet finally has an official release! Download chapters 1 through 3 here! Thank you for waiting so long while I kept starting over.
What sort of stone age of computing did that teacher live in? A low-end PIC16 can do thousands of multiplication operations in a few milliseconds, and only slightly slower if the multiplication is emulated (No MDU on the board). That's absolutely ludicrous to think that optimizes anything at all. Code optimization is an art, and avoiding multiplication for "optimization" is utter disgrace and contempt to this art.
And machine/assembly language before C? I mean, I guess I see the twisted logic behind that, but that makes too many prerequisites to actual useful programming (Assembly is terribly non-portable to learn at first). Shoot, why not start with transistor theory and electron tunneling, then learn about NAND gates, then learn how to combine all logic into forms of NAND gates, then muxing/demuxing to get the logic you want, then learn about computer architecture to know how the registers and processor work, then how machine code works, then assembly language, and then how C compilers convert C to assembly before learning C? You've got to start someplace. And starting at a higher level and progressing downwards protects you from all the complex math and hackery that goes into making a computer. Whoever thought of the idea to learn assembly before C in this day and age deserves to be stuck in a room full of punchcard computers for the rest of their life.
</rant>
I'm in a class right now with some people who learned C++ before C, and it involves C programming with a PIC32 microcontroller. A lot of people don't understand basic memory management and bit shifting, which is kinda a shame also, so the labs that take me an hour take them a few days. I'd say OOP and easy memory handling with the STL should come after you've used C strings and arrays enough to know to be careful with memory, and know how to structure programs without using tons of huge classes. That way, when you have lots of classes and your program involves code outside those classes, you have a better grasp of what you're doing. And if you choose to join the auto industry and you need to program a microcontroller that controls a certain aspect of the vehicle, you don't feel lost because you can't use C++.
IRC | Chapter Tutorial | Reference Guide
Lolz... Yeah I see the points in that!
For those wondering, Earth of Goo is still being worked on, but not as often. It will be finished! Check out my website/YouTube @ScarletFury!
True, I'm not sure when I'm ever really going to be using machine language or x86 assembly for programming.
But my last post was a bit unclear--the only time it was ever considered a priority to optimize the multiplication was when we were trying to get the best integer-sorting algorithm possible. We had to count how many function calls it would use, how many comparisons, et cetera. That was also the only time when it was incorrect to do math on bytes or shorts, because ints would be faster.
EDIT: I think the point of the assembly and stuff was just to show us how complex a simple C program was to the computer. Later we wrote an interpreter for a simple machine language (I think there were 12 instructions total), a simple assembler for it, and a sort of BASIC compiler.
EDIT EDIT:But we're getting really off topic now. Red, are the animations going to have a way to specify which frame is the next one? So, for example, my animation could go 0-1-2-3-4-5-6-7-8-9-5-6-7-8-9-5-6-7-8-9... and only show the first few frames once?
Another Planet finally has an official release! Download chapters 1 through 3 here! Thank you for waiting so long while I kept starting over.
Sorry, that's still ludicrous. For a sort algorithm, you should be more concerned about whether you're making it O(n^2) or O(n*logn) then counting individual operations. That's still really small potatoes.
IRC | Chapter Tutorial | Reference Guide
The idea was to see just how far a given program could be optimized. We started with Bubblesort, which is a very slow but simple algorithm, and tried to add in some check to reduce the number of comparisons, then tried to optimize the number of function calls. Then we did the same with Bucketsort, and eventually Quicksort.
Another Planet finally has an official release! Download chapters 1 through 3 here! Thank you for waiting so long while I kept starting over.
Blah, still small potatoes. Anyway, I should stop derailing this topic. My apologies.
IRC | Chapter Tutorial | Reference Guide
This discussion made me chuckle.
The specification is different frame elements. The index attribute for each frame specifies the order, going from 0 onward. If you want to have the same part of the image showing for different frames, you would have to just copy the line over and change the value of the index attribute.
Showing particular frames only once? Hmm, I'll get started on that. I'll likely add a boolean attribute to the frame element.
If you're going to be experimenting with the engine, I'd better update it. There are a few limitations as I thought it would just be for show. Having more than 10 frames in a single animation can't happen. I'll get to work on the aforementioned as well. This should release sometime later tonight hopefully (you won't see it until Sunday).
I tweet like a bird
I have a lame website
Alright, the engine was updated. The link is in my signature. The animation XML was modified to support frames that would only show during the first cycle. I also fixed the problem with having more than 10 frames in one animation. The limit is now 100. This will be changed once I figure out a better way of allocating memory.
I am 100% open to suggestions and ideas. To be honest, the only thing I have to work on is physics. I don't like focusing entirely on physics. My to-do list needs to be filled!
I tweet like a bird
I have a lame website