Building a game building tool
Aim: Hide lower-level details (eg. compiler flags, finding array lengths [in C], etc) from non-programmers so they have an easier time learning how to program without resorting to learning [some-specified-language-frequently-prescribed-for-beginners-that-i-wont-tell-you-to-avoid-flames] as their first 'real' programming language simply because C is too low-level.
I am planning to make a game-building-tool (Could just as well be app-building-tool, but I'll start with game first).
It'll consist of a Lua interpreter, interpreting Lua code, linking to C functions. The C functions maybe, eg "draw_line(x1,y1,x2,y2)" , "load_image("image.png")".
The target audience will be non-programmers, though it can be used by more advanced programmers too. (I don't see why they need to... They'd just make the skeleton thing of this again (without any functions added, of course) in 5 minutes, like I have already done). Once these non-programmers get acquainted with programming in Lua, they have the opportunity to add their own C functions to access from Lua, and perhaps share them as well, and hopefully learn C in the process.
By using cross-platform libraries this should be cross-platform too. However, if including an IDE it'd probably have 3 versions. I'd like this to be a GPL project with people contributing, but not during the initial stages.
Note that C is not my "home-language" and I'd probably take months to get a 0.1 version up and running, if at all.
(This is somewhat similar to Processing and PlayKode).
Please comment: , eg "bad idea, Processing does this already", "it won't work", "XXX language is easier", "you can make this better through XXX", "you suck".. etc...
I am planning to make a game-building-tool (Could just as well be app-building-tool, but I'll start with game first).
It'll consist of a Lua interpreter, interpreting Lua code, linking to C functions. The C functions maybe, eg "draw_line(x1,y1,x2,y2)" , "load_image("image.png")".
The target audience will be non-programmers, though it can be used by more advanced programmers too. (I don't see why they need to... They'd just make the skeleton thing of this again (without any functions added, of course) in 5 minutes, like I have already done). Once these non-programmers get acquainted with programming in Lua, they have the opportunity to add their own C functions to access from Lua, and perhaps share them as well, and hopefully learn C in the process.
By using cross-platform libraries this should be cross-platform too. However, if including an IDE it'd probably have 3 versions. I'd like this to be a GPL project with people contributing, but not during the initial stages.
Note that C is not my "home-language" and I'd probably take months to get a 0.1 version up and running, if at all.
(This is somewhat similar to Processing and PlayKode).
Please comment: , eg "bad idea, Processing does this already", "it won't work", "XXX language is easier", "you can make this better through XXX", "you suck".. etc...
lol, funny last part of post.
Are you talking about a game engine?
Are you talking about a game engine?
PatrickA Wrote:lol, funny last part of post.
Are you talking about a game engine?
Its probably going to look like and be in the same class as Processing/BlitzMax/PlayKode/TNTBasic, though without having to make my own compiler or use a virtual machine. For now, it is a "game" engine because I haven't done any of the IDE part.
How would it work?
How is this different from Processing or python+pyglet/pygame? I'm not trying to shut you down, I'm just curious.
My web site - Games, music, Python stuff
The first question I have is: Why?
Are you trying to make something that other people will use, or are you trying to make something so you can learn and say you made something?
Are you trying to make something that other people will use, or are you trying to make something so you can learn and say you made something?
Make it as much like GameMaker as humanly possible...er...the pc GameMaker, that is.
No offense to Al meant.
No offense to Al meant.
"Yes, well, that's the sort of blinkered, Philistine pig-ignorance I've come to expect from you non-creative garbage."
diordna Wrote:How is this different from Processing or python+pyglet/pygame? I'm not trying to shut you down, I'm just curious.It's not too different.
Personally I think C + Lua is better than learning a stripped-down version of Java as a first language. I jumped through that hoop; once you reached the limits of processing it takes some effort to get beyond what you know. It is, however, still a very good way to get started in programming. I haven't used pygame or python apps much myself. (I should start.) My intuition says Lua is easier to learn and is faster than Python. It is also easier to embed into C programs.The small difference: With this C+Lua thing, once the non-programmer is familiar with Lua, the non-programmer would have instant access to C and can add some C knowledge by adding his own C functions one at a time; instead of prowling google hoping to find some information how to make your own Java library because Processing isn't about Java libraries.
But mostly it is providing (in my opinion) a better alternative.
FreakSoftware Wrote:The first question I have is: Why?Actually I was planning to make something I can use. Whilst doing that I'll be able to learn and say I am making something
Are you trying to make something that other people will use, or are you trying to make something so you can learn and say you made something?
. I thought about this and thought maybe if a little extra effort other people can use too.
leRiCl Wrote:It's not too different.Your logic makes perfect sense and I encourage you to go ahead with your project. While I contest the notion that Lua is easer to learn than Python, they're still both very easy languages to learn, and your Lua+C system sounds easier to extend than Python, if only marginally. In other words, if you write it, I might use it. By the time you've got the core up and running, I might know enough OpenGL to give you a hand with graphics. (My progress is still very slow due to school. Ugh.)Personally I think C + Lua is better than learning a stripped-down version of Java as a first language. I jumped through that hoop; once you reached the limits of processing it takes some effort to get beyond what you know. It is, however, still a very good way to get started in programming. I haven't used pygame or python apps much myself. (I should start.) My intuition says Lua is easier to learn and is faster than Python. It is also easier to embed into C programs.
My web site - Games, music, Python stuff
diordna Wrote:Your logic makes perfect sense and I encourage you to go ahead with your project. While I contest the notion that Lua is easer to learn than Python, they're still both very easy languages to learn, and your Lua+C system sounds easier to extend than Python, if only marginally. In other words, if you write it, I might use it. By the time you've got the core up and running, I might know enough OpenGL to give you a hand with graphics. (My progress is still very slow due to school. Ugh.)I shall seek your help later on.

Here is an example program with the interpreter:
Code:
dist = distance(0,0,3,4)
print("The distance is ", dist)
dist = distance(0,0,0,0,4,3)
print("The distance in 3D is ", dist)
do_file("do-me2.lua") --Points to another lua file (that file contains only usage of distance() function)
graphics_width=640
graphics_height=480
graphics_mode(graphics_width,graphics_height,'s') --beginning with 'f' = fullscreen
--anything else= not , so right now, window mode
i=0
while poll_event()==-1 do -- poll_event returns (-1) when no event.
i=i+1;
rect(0,i,50,50) --(x,y,width,height)
draw_frame() --calls SDL_GL_swapbuffers
empty_frame() --calls glClear()
end
graphics_delay(800) --pause for 0.8 seconds
Possibly Related Threads...
| Thread: | Author | Replies: | Views: | Last Post | |
| Building a dylib of my engine and need some help | pro547 | 3 | 3,018 |
Apr 25, 2010 07:31 PM Last Post: pro547 |
|
| Building and installing PortAudio | Nevada | 4 | 3,141 |
Feb 18, 2007 04:38 PM Last Post: Nevada |
|
| ALT: MARS game development tool .... | Totalimmortal | 25 | 9,115 |
Apr 16, 2003 03:23 AM Last Post: joephish |
|

