The online racing simulator
Programming
(55 posts, started )
Quote from amp88 :Java has a reputation for being slow to execute and a bit cumbersome to develop with, but if you use a modern compiler/VM and you've never programmed before you won't notice any lack of speed.

That's like saying if you've never driven in a sports car you won't notice that your Ford Ka is slow..

Quote from amp88 :Java is used by many large corporations and interbank transfers in the UK are dealt with in Java (80+ million per day).

The reason for this is that banks tend not to change software often and the era in which most of their software was written, there weren't many real cross platform alternatives. And now it's just still used "because", in my admittedly limited banking evironment knowledge.

Don't get me wrong, if you like Java then good for you. I just feel that it's not that friendly for a lot of newcomers (although I like case sensitivity, amongst it's other features). My beef is that it encourages OOP, by making procedural fairly non-trivial. But the OOP isn't that brilliant. if you're new to programming diving into OOP might be considered harder to comprehend than procedural, especially if you end up digging in with SWING..

Sam / anyone who wishes to learn to program;

You need to realise that everyone will advocate based on their own experiences. This ends up with "arguments" over trivial things, such as what the best editor / IDE is, or what the best language is. Take what we all say with a pinch of salt and try everything for yourself. Then pick what you think is the best tool.

What works for one person doesn't work for another, is what I'm trying to say. But no matter what you do, use Vim.
Referring to Java and Speed ...
Quote from the_angry_angel :That's like saying if you've never driven in a sports car you won't notice that your Ford Ka is slow..

The thing that gets me about people complaining about Java and speed is that half the time it comes from people that then go back to writing php, python, perl, ruby, etc. (angry_angel, don't recall what your choice is). Now that's like saying that you think that the Ford Ka is slow and that's why you'd rather walk everywhere.

I won't argue that Java has a habit of forcing people down very academic levels of abstraction in OO that are just unfriendly to newcomers and speed. Swing and the whole j2ee are two infrastructures that come to mind there.

the_angry_angel is right, of course, that any reference to particular languages will invoke long, meaningless posturing by all Consider this my posturing, and that said, I do agree that if you're starting out and not doing it via CS 101, java is a bit heavy and more likely to frustrate you before you ever find the joy of programming (unless you're just a OO geek). The scripting languages is really where it's at to get your feet wet.
I'm not even going to debate languages/VM/etc. merits because as sd points out it'd be a flame fest, and usually because people are misinformed.

Java/C#/etc. are OO, but you can do tons of procedural programming in them. And spaghetti code is completely possible (I've seen bizarre stuff in huge corporate systems that makes you shake your head). However, scripting languages are a bane because they are generally used incorrectly and they tend to make it very easy to end up with spaghetti code which ends up teaching only bad practices.

Quote from sdether : The scripting languages is really where it's at to get your feet wet.

As far as languages, personally I think everyone should have to do some assembly (especially mainframe assembly), some Fortran, heck do some oddball stuff like learning Forth. Anything to stretch your mind and be able to look at programming problem solving in a different light. Be exclusionary (just as its bad for the LFS community) is bad because it doesn't allow you to approach problems with new, potentially innovative, manners.
Quote from Hollywood :As far as languages, personally I think everyone should have to do some assembly (especially mainframe assembly), some Fortran, heck do some oddball stuff like learning Forth. Anything to stretch your mind and be able to look at programming problem solving in a different light. Be exclusionary (just as its bad for the LFS community) is bad because it doesn't allow you to approach problems with new, potentially innovative, manners.

thats what i said in some other thread on learning coding
if youre serious about it you should at least try one language of the major categories (imperative functional and logic) and preferably a whole bunch of other ones
As editor goes, choose emacs! You can do just about anything with emacs!
provided you spend 28 years learning how to use it, ofc.
-
(wheel4hummer) DELETED by al heeley
-
(dawesdust_12) DELETED by al heeley
-
(Hollywood) DELETED by al heeley
-
(sam93) DELETED by al heeley
-
(the_angry_angel) DELETED by al heeley
-
(Scawen) DELETED by Scawen : not needed now that posts have been deleted
-
(wheel4hummer) DELETED by al heeley
-
(dawesdust_12) DELETED by al heeley
-
(Scawen) DELETED by Scawen : not needed now that posts have been deleted
-
(DarkTimes) DELETED by al heeley : continued o/t posting after polite requests to cease
Quote from DarkTimes :Wow - it is just physically impossible to have a conversation about programming without it desolving into an argument!

If programmers spent less time arguing and more time making useful bug-free software then the world would be a much better place!

I guess after spending some time finding some annoying bug, going to a forum to watch the slow-motion train-wreck of programmers defending the semantics of their chosen language is stress relief. I mean this thread has long ago stopped being useful on the programming topic, but why do i still read it.. Is that why people watch reality TV? Geez, i thought i was better than that .

Warning, On-Topic content follows:

I just spent the last week tracking down memory issues in FMR's control software. Yeah, isn't switching to a "managed" language supposed to solve memory leaks? Hahahaha.. you'll never get away from memory issues. They're not called "leaks" anymore because it's not leaking, the GC is completely aware of the memory being retained. It's you, the programmer, that has done something that prevents the object from being collected.

Except in this case, it actually was an old fashioned leak: The GC was not growing, but the Taskmanager was reporting growth. I did a stress test of running our software for a week and at day 4, I was running out of VM.

Did memory profiling, etc. and couldn't track it down. Finally found single line in a bit of utility code that was the culprit. See, .NET, unlike Java, let's you get down and dirty. I.e. it hands you a shotgun and sez "I know you're not used to handling heavy weapons, but hey, it's your foot your gonna shoot off. Have Fun!" I was using a scheme of getting some unmanaged heap memory, pinning it down (so that the GC didn't move it), and copying a byte array straight into a struct (a standard operation in C/C++). I then did unpin it again, allowing for GC collection, but in some places was missing the line that did the heap de-allocation. Dooh.

Expect LFSLib 0.17b in a week or so (other changes still being worked on) and if you have more pressing memory concerns, PM me.
-
(Shotglass) DELETED by al heeley : continued o/t posting after polite requests to cease
Quote from sdether :but in some places was missing the line that did the heap de-allocation. Dooh.

"free the mallocs" springs to mind Sorry, that's a terribly geeky and sad joke. It does demonstrate the importance of good practise though - make sure you always destroy, or mark as unused, what you no longer need to use. This goes for scripting and memory managed languages as well as non-memory managed programs.
Quote from the_angry_angel :"free the mallocs" springs to mind Sorry, that's a terribly geeky and sad joke. It does demonstrate the importance of good practise though - make sure you always destroy, or mark as unused, what you no longer need to use. This goes for scripting and memory managed languages as well as non-memory managed programs.

Any good programmer should TATTOO this on their body. Preferably on the hands.
Quote from Stigpt :As editor goes, choose emacs! You can do just about anything with emacs!
provided you spend 28 years learning how to use it, ofc.

Lol, VI for the masses! or notepad++ for the not-so-nerdy-geeks!
Quote from DemonTPx :Lol, VI for the masses! or notepad++ for the not-so-nerdy-geeks!

what about eclipse?
Eclipse ain't bad; its does have some oddities to it that I've never really adjusted to since it debuted back as Visual Age in like '99 or 2000. I definetly prefer it over netbeans for Java development.

Quote from St4Lk3R :what about eclipse?

Quote from Hollywood :Eclipse ain't bad; its does have some oddities to it that I've never really adjusted to since it debuted back as Visual Age in like '99 or 2000. I definetly prefer it over netbeans for Java development.

I also use it plus the PDT Extension (by Zend) and the Zend Debugger to develop my PHP applications
where on earth do you start =D
hi all

ive been looking all over the net and have tried out about 3 different dodgy looking programs involving game design or development, just to try and find out how you would go about making a game like this. i know it would be extremely difficult with physics and all, but im not talking about today's standard just something like the 2nd or 3rd release of lfs.

the programs that i've tired have given me the option to build the terrain for the game, so ive played about with that for a bit quite fun, does lfs work this way too? a terrain mould first? then i added textures but they failed, and also i attempted to build a few objects, which also ended in failure

i have so much patience though, and wont give up on this epic pointless task to build myself something, but the only guides i can find are for RPG or adventure (World of warcraft style) enviroments no vehicles.

can anyone refer me to any useful information here in the forums or elsewere because i am now addicted to googling words like "race game development" / "vehicle object design" "terrain for racetrack" and not getting anywere.

ohh yeah to make matters worse i don't know much about game design. im a website designer, so have knowledge of, er, the wrong field, if you like, of computing.. i'd like some info on what programs to use mainly.

please dont tell me to give up as i said i'm a patient person who wont be giving up on this, dont direct me to something like this


also, i have been reading around in the programming section since posting this, and wondering if it should actually be in there.... i've read so many articles in there but most go over my head. like walking into mathmatical phycics degree at six years old. it wont work.

ive read alot of this post : http://www.lfsforum.net/showthread.php?t=31648 but am still currently bewildered... is there a simpler way? to me it seems as if the world of programming is like before WYSIWYG , i know i havent done much research but it looks as if manual programming ( i.e wrinting a website in notepad ) has not got any visual user programs ( like for instance dreamweaver or frontpage instead of notepad.) i could (and most probably am) be stating the truth here or there could be hundreds of them. but that's wat this post is for, i really dont know. im 80% sure that this should be in programming section!
Ofc not. Website designing is to computing as driving a car is to designing one.
So its understandable you dont understand anything.
The closest thing to a "program" like the ones you describe is visual studio , which looks like this:


Now, that is sort of like designing a webpage with dreamweaver, but having dreamweaver only create the divs - not the actual html code.
Programmers build webpages powered by notepad. (or better, Gedit. Or more geeky, emacs. Or ultra geeky, VI. Or über geeky, a magnet and a steady hand. Or just silly, butterfiles.)


And yes, it IS that complex/long.
As for the development cycle, the very start is usually by modelling in UML (a language to describe in "scribbles" how a program/database will interact with itself), followed by some code implementation.
The thing with textures/maps comes later - first you do the mathematical representations, the "working core" of it, then feed that working core some values to check if its working properly (say you got the momentum calculation thingy worked out, you give it the values to pretend theres an object moving, then see what it tells you it happens)
.
As part of these tests, you might want to eventually try out a more complex "testing area", and the first interface/map/vehicle is born - just to test.

Say you finished you programming of ALL the equations that will govern the car behaviour when its moving straight. You then make a rudimentary track with no or little grafics just to "see" if it "looks" right. Of course, if you turn, the program would crash, but that woule be for later.

Yes its long. Yes its complex. Yes you can learn it
Go buy a couple of books on C#, Java(a good starting language). Youll only have to read around 2000 pages to know what we are talking about, and some 4000 to start doing some interesting stuff!
Quote from james_bskt :
ive read alot of this post : http://www.lfsforum.net/showthread.php?t=31648 but am still currently bewildered... is there a simpler way? to me it seems as if the world of programming is like before WYSIWYG

Your right, but like dreamweaver, you should never rely on the design view. A good solid understanding of the language is just as essential in programming applications (and much more so actually) as it is in creating website designs. WYSINAWYG

As Stig mentioned, it would take you years to learn how to make anything remotely as complex as LFS, but if you want a higher level experience then editors are available for many games (usually FPS's) that allow you to mod the game without delving into the code.

They can be good fun too actually.
I'm in partial agreement with you that this should be in the programmers subforum. However, it's not entirely relevant to LFS programming. It's definitely not something for TA. It's probably most relevant for Off Topic, but you'll get a shit load of very stupid answers.

Writing something like LFS is complex. There is nothing that will allow you to create something like this, which is WYSIWYG-based, for many reasons. The majority is because it's not suitable for creation by that sort of tool. RPG's on the other hand are more so.

Quote from james_bskt :i've read so many articles in there but most go over my head. like walking into mathmatical phycics degree at six years old. it wont work.

And there's going to be a big problem. LFS is relatively complex until you break it down into components. These components are loops of game logic, physics, etc. etc. Each component will require various skills which are not always easy to attain. I won't go over this in too much more detail, as it's been covered by others.

However, if you're truely interested in doing something like this then you're going to have to put in a lot of effort to;
1. Learn to program in a suitable language (you'll have to start with baby steps and work your way up in complexity)
2. Learn some basic physics
3. Possibly learn some basic modelling

There are a couple of great books out there which may well help you. A couple that I could recommend from my shelves are Game Coding Complete, and Tricks of the Game Programming Gurus. I'd recommend Game Coding Complete over Tricks.. purely because it's of the same ilk as Coding Complete, and it's much better written and more up to date.
Well, I'm afraid there is no WYSIWYG short-cut to creating a game like LFS. WYSIWYG lends itself to simple UI design, such as dragging and dropping buttons and forms, but it is not suitable for creating complex, abstract, real-world physics simulations. Or even simple physics simulations. Sorry to say, but a game like LFS is much much much much much more complicated than a web page.

The only way you will ever come to even a close approximation of LFS is by learning to program, learning how to create 3D models, spending at least ten years honing your skills, then sitting down and spending every day for the next five years working on it. This is what the LFS devs did.

In some ways, yes, it's sad that there is no drag-and-drop program for writing complex computer programs, but if you have a goal to write a game (even a little like LFS), then you will need to be realistic about it and start by learning the fundamentals of programming and art.

Edit: TAA beat me again.

Edit: Sorry I'll try harder not to next time... - taa
Hehe DarkTimes. Ive acutally started on doing a C++ game from a book I have. I'll keep people posted on how things go.
#44 - vane
aren't most online games done in java? e.g runescape then they are built into a webpage, i would love to make a really basic game, once my gcses are out of thg way i will get a coding book and follo some game making tutorial, home brew psp games are easier to make

speaking of which one of my close friends is off at uni learning game programming and has learnt java already and done a bit of basic, time to get him to make a runescape like game then vacuum all the money out the little kid's pockets
Java isnt the best language to make games with IMO. Anything where the memory is managed for you, Isnt best. C++/C are good for games as they compile directly to machine code. Which then intrertacts directly with the hardware. 99.99% of todays games are made using C++. As much as i know C#, I'd still rather use C++(Hence im learning it now).
#46 - vane
The only reason i really wanted to get into coding was that i am hoping to be an engineer, which would require me to code programs and software to control machines and other hardware, and it just so happens i have found out my dad knows how to code basic
Quote from mcgas001 :Java isnt the best language to make games with IMO. Anything where the memory is managed for you, Isnt best. C++/C are good for games as they compile directly to machine code. Which then intrertacts directly with the hardware. 99.99% of todays games are made using C++. As much as i know C#, I'd still rather use C++(Hence im learning it now).

I disagree. You can't say that C++ is better for writing games as its faster, it's only better for writing games where performance is going to be an issue. If performance is not a issue, then you should choose the language that will give you the most productivity gains. There's no point writing a 2D shooter in C++ just for the sake of it, when you could write it in Python in a quarter of the time. You choose the best tool for the job. The vast majority of small indie game developers don't use C++, as there are much better languages for the sorts of games they want to make. Also the statement that 99.9% of games today are made in C++ is complete lunacy. I'd take a fair bet and say that online Flash games would give C++ ones a run for their money.
Quote from DarkTimes :Also the statement that 99.9% of games today are made in C++ is complete lunacy. I'd take a fair bet and say that online Flash games would give C++ ones a run for their money.

Copyright: Beginning C++ Game Programming

Well, For games like LFS 99.99% of them are made in C++. Anyway, sorry i read it in this book.
Quote from mcgas001 :Java isnt the best language to make games with IMO. Anything where the memory is managed for you, Isnt best. C++/C are good for games as they compile directly to machine code. Which then intrertacts directly with the hardware. 99.99% of todays games are made using C++. As much as i know C#, I'd still rather use C++(Hence im learning it now).

The Pros use C++, some still use C, but thats due to the core of the game starting out in that, in around 1995. Only people just starting to learn how to program, and in fact also, how to hack games (Like Wall Hacks) use C# and I've even seem people learn how to program, from making wall hacks. It's insane how easy it is to do. (I've never done it myself tho . . . No really.)
#50 - vane
Quote from mcgas001 :Well, For games like LFS 99.99% of them are made in C++. Anyway, sorry i read it in this book.

just leave it at "some game are done with c++" to avoid digging an even bigger hole

Programming
(55 posts, started )
FGED GREDG RDFGDR GSFDG