Jump to content

BLaBZ Blog

  • entries
    18
  • comments
    59
  • views
    22,113

2 Leadwerks vs BlitzResearch - Unique But similar directions


BLaBZ

2,460 views

 Share

I had this thought today about Leadwerks and its origination, and the company that wrote the language the original Leadwerks was developed in (BlitzMax, Blitz Research Limited) and how Leadwerks and Blitz Research limited started in similar places, took unique approaches yet have similar goals in their products, being cross platform compatibility.

 

Blitz Research Ltd developed Blitz3D, which was one of the first languages/libraries to have a well working standardized set of 3D commands. Later on Blitz developed BlitzMAX, in which Leadwerks 1 and 2 was developed.

 

Leadwerks has a very similar command set to Blitz3D plus many more functions to take advantage(with simplicity) of newer technologies such as shading and physics.

 

I believe the biggest feature and hurdle for Leadwerks 3 is targeting all platforms, which is similar to what Blitz Research's "Monkey" also focuses on.

 

With Monkey you code once and can deploy your code in multiple languages, which makes me wonder...

 

Does Leadwerks have multiple code bases for each platform?

Would Leadwerks be able to produce Leadwerks 3 more quickly if developed with Monkey?

 Share

6 Comments


Recommended Comments

C/C++ and Lua are both "cross-platformable" languages. They have been around longer and have many many game related libraries written in them. Any other language trying to get into that space is a losing battle at this time.

 

Lua in LE3D will be your easiest way to code. Behind the scenes it's even easier than Monkey since Monkey is doing a translation to the language for the specific platform, where Lua is interpreted on the fly by LE3D on the platform. There is no translation or compiling step that you have to do with Lua. Deployment will also be easier. If your MAIN concern is multiple platforms and speed isn't a huge factor, you might want to use Lua in LE3D.

 

Monkey seems to be focusing more on 2D. Seems you can program 3D via OpenGL, but then you're basically doing the same thing you would be with any other language so no real advantage there.

  • Upvote 1
Link to comment

I'm skeptical of the idea of using Lua because it can't be compiled. How secure is a online multi-player game written in Lua?

 

If I want to redistribute a framework written on top of LE3D how can I redistribute it with cross platform compatibility and security?

 

Are we going to be able to code in C for iOS with LE3D and other console native languages?

Link to comment

You can use C/C++ then, but it's just more involved when compiling for all the platforms you want because of dependencies that have to be used. If you do iOS you need a mac, if you do Android you need to download their stuff and configure it and all that fun stuff. These are most likely the same things Monkey requires however.

 

In theory none of that is required for Lua. You technically wouldn't even need to have a Mac to make an iOS game, but I talked about that one time with Josh and he thinks Apple might not like that :)

 

Around security: For a multi-player game the client side should be a pretty stupid terminal anyway so there really isn't much harm in having the users see how it's coded. There are games where people have coded their own client side application to communicate with the server in the correct protocol. Most all cheating checks should be done on the server. 3rd party tools like punkbuster could be used to check client side cheats.

 

There really shouldn't be much to hide on the game client side. If people want your art assets they'll get them. If they want to hack your singleplayer game they will (and who cares about that really). If a multi-player game does client side cheat checks then it's doomed to crash and burn eventually.

 

All this client side security stuff around games is just a bunch of meh. Once your game is installed on a client PC people can and often will do whatever they want with it. The client application can't ever be trusted because of this, and if it's not trusted then it can't do much harm.

  • Upvote 1
Link to comment

I have made already a Monkey target for LE2, and it can be done for LE3 also. With LE3 you then have different Monkey targets like "LE3 Windows", "LE3 Android", "LE3 iPhone", etc....

  • Upvote 1
Link to comment
Guest
Add a comment...

×   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.

×
×
  • Create New...