## Hi...

General discussion about LÖVE, Lua, game development, puns, and unicorns.
Snow
Prole
Posts: 16
Joined: Tue Jun 29, 2010 4:54 pm

### Hi...

Well hi.

So I've made a little game but it's not finished. Thing is I'm not good at making finished games... yeah that's a real shock I know. So yeah just wondering if there's someone out there that would like to design all the game levels and make the plot while I just do the code and maybe graphics (I already have some graphics but they could be discarded as they were just for testing purposes.)

Some things about the game so far:
It's an adventure platform game (with slopes)
There are different characters that you can talk to
Anything can send events and anything can listen for events, so anything can do anything when anything happens
Levels / worlds / maps / whatever are .lua files containing all scripts for that level and the tiles
Other things like game pausing and animations and such
It's snowing out

So yeah if anyone feels like designing levels and telling me what features the game needs for the levels & gameplay then that way I can just do the code and not worry about the finished game. But really only say you'd want to if you really want to cause it's harder than you think to make *good* levels and a *good* storyline (at least for me) and I don't want to work with someone who just gives up after a while (I already do that part actually that's really the reason I'm writing here, cause otherwise the game don't get finished so this is really important.) Yeah that's all I have to say for now.

Well bye.

Robin
The Omniscient
Posts: 6506
Joined: Fri Feb 20, 2009 4:29 pm
Location: The Netherlands
Contact:

### Re: Hi...

Hi!

If the levels are easy to write, you might be able to get “the community” to help. If not, you'll have a problem getting other people to help you. If you post your .love here, we can see it for ourselves.

Snow
Prole
Posts: 16
Joined: Tue Jun 29, 2010 4:54 pm

### Re: Hi...

Robin wrote:Hi!

If the levels are easy to write, you might be able to get “the community” to help. If not, you'll have a problem getting other people to help you. If you post your .love here, we can see it for ourselves.
Yeah I was expecting that. Having just collab'd levels wouldn't fit this type of game. I'm not trying to get anyone to help, just chancing if there is someone who wants to make this style of game but doesn't so much want to do the coding half of game making. It's more be like us making a game than you giving me assets for my game which is what it'd more be like if it was collab'd.

Robin
The Omniscient
Posts: 6506
Joined: Fri Feb 20, 2009 4:29 pm
Location: The Netherlands
Contact:

### Re: Hi...

People won't jump in and commit to a project if they don't know what it is or how the quality and quantity of the code is. Just sayin'.

Snow
Prole
Posts: 16
Joined: Tue Jun 29, 2010 4:54 pm

### Re: Hi...

Alright, that makes sense.

Basically what I've got is 4 days' work since I just started learning Lua/Love (I've programmed in other languages before.) I save a backup at then end of each day.

Right now I have 5 main files:
classes.lua holds the Screen class, with it you can create 'screens.' Screens are things that can be positioned and paused and stuff. Right now I use one Screen to hold one Game. Game is another class the deals with the game, such as loading maps, adding objects, events, and so on. Might make another class for game objects but I don't know if it'd be worth it.

definitions.lua holds references to all the images and the types of tiles and if they collide, are a slope, or have friction (+ anything else.)

main.lua does all the startup and setup work.

game.lua is like a level file. It holds all object types and what they do but it will probably turn into something that other level files can include (like level generics.)
Here's the player update function as of now:

Code: Select all

function player(o, game)
o.yv = o.yv / (1 + 0.05 * game.speed) + game.gravity * game.speed
o.xv = o.xv / (1 + 0.05 * game.speed)

if love.keyboard.isDown('left') then o.xv = o.xv - 0.2 * game.speed ; o.facing = 0 end
if love.keyboard.isDown('right') then o.xv = o.xv + 0.2 * game.speed ; o.facing = 10 end

if love.keyboard.isDown('2') then game.map.scale = game.map.scale * 1.1 end
if love.keyboard.isDown('1') then game.map.scale = game.map.scale / 1.1 end

o.x2 = o.x
o.y2 = o.y

o.x = o.x + o.xv * game.speed
o.y = o.y + o.yv * game.speed

c = collideQQ(game.map.tiles.foreground, o, game)

if string.find(c, 'd') then
if love.keyboard.isDown('z') or love.keyboard.isDown('up') then o.yv = -6 end
if math.abs(o.xv) > 0.2 then o.img = 1 + (game.timer / 8) % 2 else o.img = 1 end
else
o.img = 2
end

game:setMapOffset(o.x + o.w / 2, o.y + o.h / 2)
end
The game passes the current object and itself to this function player every frame, because...

...the player was added earlier with this code:

Code: Select all

game:addObject('player', player, drawPlayer)
Here I added an object that updates with function player and draws with function drawPlayer. The first parameter means nothing, but it may be useful for something later on, who knows...

I don't just post everything cause it's all subject to change and it spoils any surprises!

Last edited by Snow on Tue Jun 29, 2010 7:10 pm, edited 1 time in total.

bartbes
Sex machine
Posts: 4946
Joined: Fri Aug 29, 2008 10:35 am
Location: The Netherlands
Contact:

### Re: Hi...

I like the game:addObject though, seems nice.

Snow
Prole
Posts: 16
Joined: Tue Jun 29, 2010 4:54 pm

### Re: Hi...

Boo, my free host has an upload limit (after the file completely uploads it deletes it .) Anyway it just showed what I explained above.

Robin
The Omniscient
Posts: 6506
Joined: Fri Feb 20, 2009 4:29 pm
Location: The Netherlands
Contact:

### Re: Hi...

With so little experience, it will be hard to find people to go along with this. It might help if you have been programming in other (similar) languages for a long time.

So, how much programming experience do you have, in general?

Also: the bit you've shown has two things about it: first, it looks good (as far as I can tell from such a small bit, of course), not hackish or clumsy. On the other hand, it looks like the player() function is awfully low-level. I'm not sure how the rest of the game works, but having to fiddle metaphorical bits in a level file might not be a very attractive idea to a potential level-writer.

Luiji
Party member
Posts: 396
Joined: Mon May 17, 2010 6:59 pm

### Re: Hi...

Recommendation: create a level editor, if you can. If you have a level editor, it doesn't matter how weird your level data files are.
Good bye.

Snow
Prole
Posts: 16
Joined: Tue Jun 29, 2010 4:54 pm

### Re: Hi...

I've been programming on and off for 10 years. I believe I started on this thing. I mainly did web stuff (PHP/JS/SQL), and I actually made a js platformer using divs for objects, not really a good idea. You can get to it here if my computer's online: http://24.56.252.76/gemcollector/ But I also did some TNT Basic until my iBook lost it's last life which made me switch to Linux and coincidently find a bunch of cool things like Love. Now I do some C++ and Python but not much since I don't need it yet, just for a few things with Blender...
Also: the bit you've shown has two things about it: first, it looks good (as far as I can tell from such a small bit, of course), not hackish or clumsy. On the other hand, it looks like the player() function is awfully low-level. I'm not sure how the rest of the game works, but having to fiddle metaphorical bits in a level file might not be a very attractive idea to a potential level-writer.
I'll definitely have to do something about that. Not sure what should be predefined and what not but I'm playing with it now...

And yeah I will end up making a level editor but it will probably be one that writes out level data to be edited by hand, so it'll still matter. Reason being each character still has to have their own scripts. I don't want to define all the characters at the start because I want it to be equally easy to add new ones cause they're only going to be used once in most cases, but maybe that's not the best way to go about it? Unless I make the level editor able to edit initial attributes on objects, hmm. Have to look into it more.

### Who is online

Users browsing this forum: SlyXPG and 32 guests