the Magicball Network Forums

the Magicball Network Forums (https://forum.magicball.net/index.php)
-   Fan Games (https://forum.magicball.net/forumdisplay.php?f=38)
-   -   LBA2 Remastered (https://forum.magicball.net/showthread.php?t=18208)

Lupin 2018-02-01 22:06

LBA2 Remastered
 
Hello guys,

It's been a long time since I last posted here.
But I haven't forgotten our favorite game!


Xesf and I have been working in secret for the last year and a half on a big project.
We are reimplementing LBA2 in Javascript/WebGL, so that it can be played on multiple platforms.
Right now our focus is on desktop web browsers, but it could easily be adapted to be a standalone app or run on phones with touch screen controls.

Here is the link: http://lba2remake.xesf.net/


It is very much a work in progress, and not quite playable at this point.
There are a few important features missing to get there, but we've already done the hard parts.
I would call it a pre-alpha version.
Still, we felt it was time to start showing it to you.

The controls are the same as the original game, except for switching between behaviours. It's using the 1, 2, 3, 4 keys instead of the F1, F2, F3, F4 keys. The behaviour menu is not implemented yet.

There are some additional keys:
  • F: display framerate
  • C: switch to flying controls (Then use WASD+Mouse to control the camera)
  • R: change resolution

We also worked a bit on a Virtual Reality version, which we tested on cardboards. But we can't share that at this point because it's using a native mobile app, requires a gamepad, and is a bit tricky to setup.


More importantly, we've been also working on an editor mode, which for now includes a fully working script debugger as well as other related tools.
It is meant to become a full-fledged editor to be used for modding at some point. We're only getting started on this, though.

You can check it out here: http://lba2remake.xesf.net/#editor=true


Hope you enjoy what we've done so far!

MevX 2018-02-01 22:40

I didn't expect such a nice suprise on MBN this day. So much content is already put into place on Citadel Island, I am very impressed! Definitely looking forward to seeing further progress made, and perhaps the addition of a legacy camera option?

Also is there any way that somebody like me could help with the project, perhaps something easy as reporting bugs?

Lupin 2018-02-01 22:57

Quote:

Originally Posted by MevX (Post 457374)
I didn't expect such a nice suprise on MBN this day. So much content is already put into place on Citadel Island, I am very impressed! Definitely looking forward to seeing further progress made, and perhaps the addition of a legacy camera option?

Check out the editor mode, you can use it to switch to any location in the game. Legacy camera option should not be too hard to implement, but it's not on the top of our priority list at the moment.

Quote:

Originally Posted by MevX (Post 457374)
Also is there any way that somebody like me could help with the project, perhaps something easy as reporting bugs?

We're always welcoming any help. We're thinking of maybe open-sourcing it, but it'll require writing a bit of documentation first and cleaning up some stuff.
It's too early for bug tracking. We're aware of the major bugs and missing features and have a lot to do with just that.

Polaris 2018-02-01 23:36

Wooow, impressive :eek:

Hmm... My controls do not work :? (I'm using firefox).

xesf 2018-02-01 23:52

Can you try to click with the mouse inside the game are?
It may be out of focus.

Homeless 2018-02-02 01:23

Oh wow! This is an amazing project with a great vision! Evidently you two are serious about it too. Thank you guys for working on this and big props to you!

The editor looks phenomenal and is a lot of fun to play around with it. It's intriguing to see in this way how things were made, as has been a lot of fun previously with tools available for LBA 1. I can see this being of practical use for speedrunning the original also.

Seeing this editor makes me wish this editor was available for LBA 1 too. Theoretically, seeing that LBA 1 and 2 have much in common, could the editor be loaded with LBA 1 assets also without all too many modifications?

The way the camera is implemented is very interesting and a nice addition. I'd like to see that one stick of course but would also like to see a legacy camera available, similar to what MevX said. In part because it's enjoyable to also be able to play it as it was in the original, but I'd also imagine that the legacy camera would be a good option for VR, at least for some with not much in terms of VR legs.

Also I'd like to ask if there's any chance the VR version will be made compatible with WebVR so it could be used on a lot of VR devices? I'd absolutely love to give this a whirl on my Oculus Rift.

Keep up the great work guys! You are awesome.

Polaris 2018-02-02 03:20

Quote:

Originally Posted by xesf (Post 457377)
Can you try to click with the mouse inside the game are?
It may be out of focus.

Huh, I could've sworn it was in focus before as well...

Using the magic ball opens the browser's menu and kinda locks the game though...

WOW DAT OUTSIDE CAMERA :eek:
Also, walking on water :D

Gizmo 2018-02-02 03:27

Awesome
 
that is really cool !! keep up the good work guys ,
this updated version of lba2 feels so different , (in a good way)
feels more (smoother?)

Lupin 2018-02-02 10:34

Quote:

Originally Posted by Homeless (Post 457378)
Oh wow! This is an amazing project with a great vision! Evidently you two are serious about it too. Thank you guys for working on this and big props to you!

The editor looks phenomenal and is a lot of fun to play around with it. It's intriguing to see in this way how things were made, as has been a lot of fun previously with tools available for LBA 1. I can see this being of practical use for speedrunning the original also.

Seeing this editor makes me wish this editor was available for LBA 1 too. Theoretically, seeing that LBA 1 and 2 have much in common, could the editor be loaded with LBA 1 assets also without all too many modifications?

The way the camera is implemented is very interesting and a nice addition. I'd like to see that one stick of course but would also like to see a legacy camera available, similar to what MevX said. In part because it's enjoyable to also be able to play it as it was in the original, but I'd also imagine that the legacy camera would be a good option for VR, at least for some with not much in terms of VR legs.

Also I'd like to ask if there's any chance the VR version will be made compatible with WebVR so it could be used on a lot of VR devices? I'd absolutely love to give this a whirl on my Oculus Rift.

Keep up the great work guys! You are awesome.


Hey Homeless, thanks for the nice message, it makes us want to keep working hard on it. I’m glad you like the editor. We have big ambitions for it.

I think adapting the engine for LBA1 would not represent too much work compared to the whole endeavor, but there are still some differences, particularly with the 3D models.
We do have that in mind, but it’s not a priority at this point.

We kind of already have a camera system which is closer to the original for VR, and I do think too that camera shouldn’t be moving like that for VR. And legacy camera for the normal mode is in the TODO list.

WebVR is also in the TODO list, but I won’t start working on that for a while. I’m planning to buy an Oculus at some point, maybe in a couple of months. I’ll have a stab at it then.

Angelus 2018-02-02 15:50

Congratulation to you Lupin and Xesf this looks really impressive :)

I technical guy and always like to disassemble things so could you guys share a little bit more technical details what you using ? Clear WebGL or some libraries/engines for that ?

xesf 2018-02-02 17:49

Thanks guys, for you kind messages, we really appreciate.

@Angelus, the engine is being develop using Javascript (ES6), ThreeJS (WebGL) and React (UI) with loads of handy nodejs libraries.
All code has been written from scratch using the knowledge we have from other LBA tools, format specs, LBA1 open source implementation.
There are still unknown pieces for us to discover like how Holomap works, etc..

WebSeed 2018-02-02 21:53

Amazing stuff - very impressive.

The real-time outdoor camera is what I've always wanted - in fact I raised a thread about this nearly 12 years ago!

I thought you would have had to use WebAssembly and original source but looks like you've recreated with JS + Three.js. Any chance you could go into a bit more detail about how you built / are building this? I'm really interested in WebGL - wouldn't have thought Three.js was good match for recreating LBA2 but looks like you've managed it.

xesf 2018-02-02 22:43

The project basically started in June 2016 with Lupin building an Island Viewer with VR support.
I joined him a month after as we realize we both had joined goals.
I then started with his base and start doing the 3d models and animations and an engine has been built since.

It was pretty hard to keep it in secret, when so many good projects appear last year!!

The code has been written from scratch based on the knowledge we acquire with the file formats and tools we build in the past 20 years.
We used as reference other open source tools, including our owns.

WebGL and JS was always the main target it as it turned to be a very fast pace development with quicker results. (+ cross platform)
We started with ThreeJS to avoid all the hard work to build our own rendering engine, but during the project we realize we could stick with it, as threejs was performing really well.

Not sure what more I can add but feel free to ask other specific questions.

We should be able to make the code public soon enough and hopefully receive some extra help.

JBrothersz 2018-02-04 15:05

Guys, this is amazing! I always wanted to see a free moving camera in 3d space. If you need any help I'll be of service :)

xesf 2018-02-04 18:18

Glad you like it.

We do need help, thanks for offering. We will be giving more details soon when we manage to prepare the public repository.

K. A. T. 2018-02-04 21:20

I'm starting with React, but sign me in:)

MrQuetch 2018-02-05 21:13

Wow... Xesf and Lupin... You guys are amazing! I'm not sure how to even express how much I love this. I really appreciate how much work and effort you guys put into this. I'm surprised just how well it looks for being higher resolution - you can still see the "dithering" and shading details on the terrain and character models just like you can in the original LBA2! Incredible!

I feel bad that there wasn't anyway in which I could help in the past. May I ask how much you guys know about the model format for LBA2? I know this is a question I've asked several times in the past, but it looks like we might be getting close to custom models - judging by how much progress you guys have of course. Correct me if I'm wrong, but wasn't Lupin originally Link? Didn't he make the program for converting *.lm2 to *.3ds?

Keep this project going - this is the most excited I've been in the past few years... Maybe even since LBANet has vanished.

I'm very familiar with C programming more than ever before, and if there is anything I can do to help, I would love to take part in this. But, if you guys don't - I completely understand. I'll admit, I've been somewhat of a jerk in the past - very childlike of me. Perhaps I ought to "shut up" for awhile and just let the fun go on without me.

xesf 2018-02-05 21:56

Hi MrQuetch,

Thanks for your words.

I'd like to apologize, I guess Lupin will fill the same.
We knew you were pretty involved in the model formats and we had most of the things discovered, at the least a good part of it, but we couldn't give much hints compared from what I gave at the time, or else people could notice we both were working on the project. We wanted to keep it in secret until we had something concrete to show.

As documentations are pretty time consuming and we are focus on the game implementation we never improved the specs. We did update some LBA Info wiki pages, but not as we expect.
The source will be available soon, so I guess the community can also contribute by adding as much info into the LBA Info wiki based on what we are doing.

All help is welcome, so I am pretty sure a lot members in the community we be able to help in some shape or form.

MrQuetch 2018-02-05 22:22

Quote:

Originally Posted by xesf (Post 457398)
Hi MrQuetch,

Thanks for your words.

I'd like to apologize, I guess Lupin will fill the same.
We knew you were pretty involved in the model formats and we had most of the things discovered, at the least a good part of it, but we couldn't give much hints compared from what I gave at the time, or else people could notice we both were working on the project. We wanted to keep it in secret until we had something concrete to show.

As documentations are pretty time consuming and we are focus on the game implementation we never improved the specs. We did update some LBA Info wiki pages, but not as we expect.
The source will be available soon, so I guess the community can also contribute by adding as much info into the LBA Info wiki based on what we are doing.

All help is welcome, so I am pretty sure a lot members in the community we be able to help in some shape or form.

I'm glad that you see me this way. If I had known you guys were working on something like this I wouldn't have kept being a bother. I feel really dumb now... It's great to hear all that you've done, and that's pretty amazing that you guys managed to add more to the wiki pages during the progress of it.

I'm currently using the (http://lbafileinfo.kazekr.net/index....=LBA2:3D_model) as a basis for learning how the data is stored in the *.lm2 binary format. I'm writing structs in C to see exactly how the bytes are aligned in memory. It's making more sense now, and I'm getting a better feel for it. The only real thing that is bothering me is the first part of the header - there is no definite data-type. Right now, I'm just using five 'u32's to fill in that empty space.

I'm going to try writing an exporter from either Blender or 3ds Max so I can hopefully start getting models in the LBA2 format. It's a bit of a stretch, but I'm going to make a conscious effort.

xesf 2018-02-05 23:21

I will update the document, if you had any other queries, revive your old topic and I will try to add more info.

MrQuetch 2018-02-06 06:04

Hey, again.

I've been looking at the bottom-right-corner where we can type things in (expressions) and look at data in the game. Is it possible to actually change this data and see the changes as you play?

I figure I better ask before actually trying some more.

Lupin 2018-02-06 10:22

Hi MrQuetch,

The debug console is meant to observe internal values as they change over time and help us debug issues in the engine. In theory you could at least call some functions that change things, like switching to other scenes, but it's not recommended to do that.

It's not like you're gonna blow your computer up if you try though. The worse thing that could happen is that the game crashes, which you can fix with a simple page reload.

MrQuetch 2018-02-06 20:17

Quote:

Originally Posted by Lupin (Post 457408)
Hi MrQuetch,

The debug console is meant to observe internal values as they change over time and help us debug issues in the engine. In theory you could at least call some functions that change things, like switching to other scenes, but it's not recommended to do that.

It's not like you're gonna blow your computer up if you try though. The worse thing that could happen is that the game crashes, which you can fix with a simple page reload.

Aahh... I see now. I noticed that I could search for many variables and such.

May I ask about your exporter for *.lm2 to *.3ds? I would like to see how I can get my own converter going so I can get different models in LBA2. I asked Xesf, and he told me that he will hopefully get the wiki updated more in the future.

May I also ask how the offsets work in the headers of the 3d models? Do they go by the byte (hex) number?

Lupin 2018-02-07 11:28

LBA2 Remastered
 
I don’t remember anything about the exporter, and I lost the code. That was many years ago.

As said before, we’ll open source our engine soon (as soon as we can figure how to remove all sensitive information from the git history). You can use it to understand how the format works.

As xesf said, we’ll also try to update the wiki with what we know (we’ve done that a bit already a few months ago), but don’t count too much on that, it’s a lot of effort and we have other priorities.

xesf 2018-02-08 09:45

I updates the wiki the other day, but was just the header to be quicker.



There is another release available with kust few things to unblock some of the initial issues people reported.
You can now view the changelog file under editor mode by clicking in "Gameplay editor"

Quote:

0.0.2 - 07.02.2018

Added

(Editor) Change log file.
(Editor) Change log area in the editor (allow you to view this file)
Fixed

(Game) Key events cancelled on focus lose (eg. Windows Alt+Tab)
(Game) Collision system to allow jump on cliffs
(Game) Fixed Spider animation exception in Citadel Caves
(Editor) Allow single area in editor, with no child areas


All times are GMT +2. The time now is 18:21.

Powered by vBulletin®
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Copyright ©2000 - 2016, the Magicball Network