Jump to content

Is Leadwerks The Engine For Me?


talamander
 Share

Recommended Posts

Hey guys, I've owned Leadwerks for over a year now, and have only clocked about 2 hours in..:/ I've decided to actually start a project now, but first thing is first, is Leadwerks the right engine for my idea?

 

The Idea: Roleplaying Gaming

 

If anyone has ever played Arma Life or LSRP, that is what kinda what I am looking to do. In the end I would like for it to be multiplayer, but I don't want to get "too big for my britches" early on in development before I figure out what developing this is going to be like.

 

I plan to have a lot of the information stored in arrays, as I am very familiar with Arma 2 Island Life mission files this is similar to how it is done there. A lot of the roleplay will be done via text (chat) between players very much like LSRP.

 

I'm just wondering, is it viable to use Leadwerks to create a RPG Multiplayer game similar to LSRP and Arma 2 Life? I have very little coding experience (.sqf is what I am most familiar with) and plan to start binging on LUA tutorials soon to get myself up to date with it.

 

I would appreciate any replies,

 

Thanks,

Talamander

  • Upvote 1
Link to comment
Share on other sites

I'm unfamiliar with both of those, but they sound somewhat like MMOs? If that's the case, then it's probably not a great choice for this engine. There are engines that specifically cater to MMO-type games, so those would be your best option.

 

Leadwerks doesn't have networking at this time built in, so you would need the C++ version to do that (although there might be a Lua wrapper floating around somewhere). I would also guess working on a large scale with networking isn't a trivial task, even for experienced programmers. Also, the world size might be a constraint if you intend to make very large worlds (and especially keeping memory usage low as there is no streaming support built-in).

 

That being said, the type of gameplay involved should be doable in general, but you would need to be prepared to do a lot of work. There are a few "specialty" game types like this that would not be best suited for Leadwerks.

Link to comment
Share on other sites

I'm unfamiliar with both of those, but they sound somewhat like MMOs?

 

LSRP has around 500 players online at all times. Arma 2 Island Life servers have anywhere from 0-60 at most.

 

As far as player count goes per server there wouldn't be more than 60 at most in a server.

 

so you would need the C++ version to do that

 

What do you mean by this? Could I not use the Steam API and still code my game in Lua?

 

Also, the world size might be a constraint if you intend to make very large worlds

 

I'm not sure how big the worlds I intend to make are....not too big I suppose.

 

you would need to be prepared to do a lot of work

 

tongue.png as expected.

 

So, do you recommend Leadwerks for a roleplaying game? I intend to create most of the game before attempting to implement multiplayer, could that be a problem?

 

EDIT: I checked out what I am assuming is your game, Crime Closer. That is the sort of style I am going to be going for with mine, except with what I am assuming would be more of an emphasis on roleplay. What sort of challenges have you faced with developing Crime Closer?

Link to comment
Share on other sites

I'm curently making an FPS / RPG game so yes you can make a good looking RPG with this !

 

I myself do not know if I can make an MMO with LE but i think it is possible because anything is possible to make with LE.

I'm usiing FlowGUI that is a cheap 10 dollar addon that makes my menus and inventory system.

The inventory system is incuded with FlowGUI and i recommend it if you are making an RPG or any game with inventories or menus.

 

FlowGUI you can get here: http://www.leadwerks.com/werkspace/topic/11262-flowgui-for-leadwerks/

 

I'm just starting with LE myself and I have already accomplished creating my awesome inventory system with the help of this forum !

As for your other questions I myself do not have enough knowledge to answer them.

Link to comment
Share on other sites

The Steam API exposed in Lua only allows for basic Steam stuff that would be useful if you publish a game on Steam. It doesn't contain networking Steam API commands though. With C++, you could expose this yourself fairly easily (you can even bypass the Steam API calls in Leadwerks and just call the commands directly).

 

I would recommend Leadwerks for roleplaying games in general since it has all you need in that regard. TBH, I don't know if it would be an issue to develop most of the game before adding multiplayer for your type of game. If it were just a standard FPS, then I wouldn't think it would be as much of a problem. But choosing how to send vast amounts of data across a network could be problematic. Plus you would likely have other client-side limits that you might face (most notably performance) that you will need to resolve. I would also think that synchronization could be very complicated.

 

I face some of the challenges that you will face. My game has issues with framerates (that I have to keep an eye on) since I have so many assets lying around and in view. I use time-slicing to simulate threading in some ways. Sometimes I also get crashing, and this might be due to my extensive memory usage. The biggest issue with large, populated worlds is that there is no streaming. I probably should have developed in C++ in the beginning so I could try to add streaming myself, but now it's a little late haha.

Link to comment
Share on other sites

I myself do not know if I can make an MMO with LE but i think it is possible because anything is possible to make with LE.

 

I wouldn't call it an MMO because that's really not what it is. It's multiplayer but the plan is for people to be able to host their own servers with about a 60 player cap.

 

Anyways, I will look into this FlowGUI thing in the future, so thanks.

 

I'm going ahead and learning LUA anyways, because it's always good to learn right? Even if I don't end up using LE I would like to know it.

Link to comment
Share on other sites

Yeah, Lua is a pretty simple language and in my experience it's similar to a lot of server-based languages (such as Python, Ruby, and PHP). Leadwerks does have certain conventions that you will likely need to follow, but Lua itself is also a pretty popular game scripting language.

Link to comment
Share on other sites

The Steam API exposed in Lua only allows for basic Steam stuff that would be useful if you publish a game on Steam. It doesn't contain networking Steam API commands though. With C++, you could expose this yourself fairly easily (you can even bypass the Steam API calls in Leadwerks and just call the commands directly).

 

Forgive me, I am ignorant, but is it possible to create the game with LUA and then have the multiplayer components run on C++?

 

I also found this posted by someone else, know anything about it?

 

That isn't '100%' free, by the way, although its close.... Not close enough for me to appreciate though. Since Leadwerks is tied into Steam though, why not use the Steam API for networking solutions? The server services from Valve are pretty awesome.

https://partner.steamgames.com/documentation/api

 

Thread: http://www.leadwerks.com/werkspace/topic/12012-a-few-questions-about-leadwerks-game-engine/page__hl__multiplayer

Link to comment
Share on other sites

Forgive me, I am ignorant, but is it possible to create the game with LUA and then have the multiplayer components run on C++?

Yes, you can basically combine C++ and Lua in almost any way you want. That being said, you would have to find a way to efficiently extract variables from your Lua code, and so you could run into transmission speed issues (since you would effectively be taking out large amounts of Lua data each frame or so). If your ultimate goal is to create a multiplayer game, it probably would be best to do the gameplay logic in C++ as well and leave Lua for client-side code (like quest logic, inventory management, etc.).

 

My guess is that you would probably have to pay something to Steam to use their servers. Of course, if you are forcing players to host if themselves, then the cost is on them.

Link to comment
Share on other sites

Yes, you can basically combine C++ and Lua in almost any way you want. That being said, you would have to find a way to efficiently extract variables from your Lua code, and so you could run into transmission speed issues (since you would effectively be taking out large amounts of Lua data each frame or so).

 

This is a non issue - you can expose C++ methods to lua, the engine does this each frame already - not at problem ;)

 

If you search the forums and blogs here at leadwerks.com you will find atleast 3 different methods of doing it.

 

If your ultimate goal is to create a multiplayer game, it probably would be best to do the gameplay logic in C++ as well and leave Lua for client-side code (like quest logic, inventory management, etc.).

 

If you mean the server code then yeah properly better to keep that in C++, but gameplay logic as such is idealy suited for a high level language such as lua

System:

Linux Mint 17 ( = Ubuntu 14.04 with cinnamon desktop ) Ubuntu 14.04, AMD HD 6850, i5 2500k

Link to comment
Share on other sites

I have very little coding experience

 

If anyone has ever played Arma Life or LSRP, that is what kinda what I am looking to do.

 

but I don't want to get "too big for my britches" early on in development before I figure out what developing this is going to be like.

 

 

To be a realist here doing a multiplayer game for your first game is being too big for you britches. Multiplayer games are the hardest games to code for. You should aim for a single player first.

Link to comment
Share on other sites

@talamander.....As rick said, doing a multiplayer game for your first game with little coding experience is the death of your dream project...Start small and take all the tutorials...put out several small games and let the community here play them and give feedback...take this feedback as a learning experience to make your dream game better....Welcome to Leadwerks

Link to comment
Share on other sites

@talamander.....As rick said, doing a multiplayer game for your first game with little coding experience is the death of your dream project...Start small and take all the tutorials...put out several small games and let the community here play them and give feedback...take this feedback as a learning experience to make your dream game better....Welcome to Leadwerks

To be a realist here doing a multiplayer game for your first game is being too big for you britches. Multiplayer games are the hardest games to code for. You should aim for a single player first.

I will definitely do that (create smaller games first). Have any thoughts on what a good first couple of games could be?

Link to comment
Share on other sites

Since we presently do not support networking, I would not recommend it for you unless you are willing to include RakNet or Steam networking into your C++ project and are comfortable working with that.

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

Have any thoughts on what a good first couple of games could be?

Pretty much anything with a small amount of resources. Leadwerks helps you most with FPS / TPS games with the character controller and pathfinding so in your case I'd start by making a small desolate world and putting a character in it and have him run around. Then you can populate the world with trees and/or buildings and maybe throw an enemy in. Doesn't seem like a lot but it will teach you more than you'd think. But I'd start all this after you've gone through those tutorials and you're somewhat comfortable with code and the editor.

Link to comment
Share on other sites

Pretty much anything with a small amount of resources. Leadwerks helps you most with FPS / TPS games with the character controller and pathfinding so in your case I'd start by making a small desolate world and putting a character in it and have him run around. Then you can populate the world with trees and/or buildings and maybe throw an enemy in. Doesn't seem like a lot but it will teach you more than you'd think. But I'd start all this after you've gone through those tutorials and you're somewhat comfortable with code and the editor.

 

I think my first game is going to be a Slender clone, I made one of these a couple of years ago with Unity and imo they are pretty fun to do.

 

Thanks for the welcome into the community guys!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...