Boardwalk icon indicating copy to clipboard operation
Boardwalk copied to clipboard

Building Boardwalk 2.0

Open ayunami2000 opened this issue 5 years ago • 23 comments

I just got all the different parts of Boardwalk 2.0 set up. In the README it says that only your computer can build it currently. Is there a way for me to build what I have? Here's what I've got so far (I'm kiiiinda new-ish and some of this stuff may be a little rough) https://github.com/ayunami2000/Boardwalk-boardwalk-2.0/invitations

ayunami2000 avatar Jan 25 '20 19:01 ayunami2000

I don't remember how to build it anymore either. (I started 2.0 in 2015, gave up, worked for a week in 2018, gave up again, and so I'd forgotten.)

Boardwalk 2 doesn't work yet (I haven't finished the LWJGL3 port yet, so it won't launch 1.13 and later, and I don't know how to build the LWJGL2 anymore, so I can't get 1.12 and older versions working either); there's probably no point in trying to get it to work.

if I get it working, I'll setup automated builds.

For now

  • the unmodified Java 9 Mobile build it uses is here (https://github.com/BoardwalkApp/boardwalk2-openjdk-build)

  • the LWJGL3 patches are here https://github.com/BoardwalkApp/boardwalk2-lwjgl3

I had trouble building this; I couldn't even build unmodified LWJGL3 on my computer. I tried ant compile-templates release and it gave me an error about modules.

I'm so sorry about this.

zhuowei avatar Jan 26 '20 00:01 zhuowei

I already added those libraries into it, that's why I have a separate repo. I actually just built it and it did compile to an APK though, but it keeps saying package format error (I probably have too old of devices) But I don't know if my APK is gonna run at all.

https://github.com/ayunami2000/Boardwalk-boardwalk-2.0/blob/master/app-debug.apk

ayunami2000 avatar Jan 26 '20 16:01 ayunami2000

If i do remember correctly i Also tried this,with a Lot of repo fixes i dont rememember anymore,i got the app to the point where i Can launch the game,but nothing happens. Btw: written on a phone

miguelmazetto avatar Jan 29 '20 06:01 miguelmazetto

I think It would be better to start from Scratch, this app is something that a looooot of people would want, because everyone has a phone, but not all of them have a computer. And the pocket edition it's Just disapointing, the inability to play with people and with mods from Java versions makes me pretty Far from even buying the pocket edition version.

miguelmazetto avatar Jan 29 '20 06:01 miguelmazetto

I already added those libraries into it, that's why I have a separate repo. I actually just built it and it did compile to an APK though, but it keeps saying package format error (I probably have too old of devices) But I don't know if my APK is gonna run at all.

https://github.com/ayunami2000/Boardwalk-boardwalk-2.0/blob/master/app-debug.apk

If you're using older devices you might want to lower the minimum Android sdk requirement.

miguelmazetto avatar Jan 29 '20 06:01 miguelmazetto

ayunami2000

You deleted that link, could you put the debug-apk back? I have newer devices to test it on (Android 8, Samsung S7)

KdotDevelopment avatar Feb 01 '20 14:02 KdotDevelopment

Oops, sorry the repository was set to private. Here's a link to it: http://s000.tinyupload.com/index.php?file_id=05087960811950374946

On Sat, Feb 1, 2020 at 9:22 AM KdotDevelopment [email protected] wrote:

ayunami2000

You deleted that link, could you put the debug-apk back? I have newer devices to test it on (Android 8, Samsung S7)

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/zhuowei/Boardwalk/issues/364?email_source=notifications&email_token=AF5DB4GQMLZO6CQJJKC6D7TRAWAUDA5CNFSM4KLSRGR2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKQ6GWI#issuecomment-581034841, or unsubscribe https://github.com/notifications/unsubscribe-auth/AF5DB4DTZA4TOFVOBQGHKTLRAWAUDANCNFSM4KLSRGRQ .

ayunami2000 avatar Feb 01 '20 14:02 ayunami2000

I was able to open the apk and login to my mc account, but an error tells me it cannot find boardwalk/gamedir/versions/1.12.2/1.12.2.json

This makes me believe it doesnt actually download the files to make it run.

KdotDevelopment avatar Feb 01 '20 15:02 KdotDevelopment

@KdotDevelopment set to allow storage permission for Boardwalk 2.0

andris155 avatar Feb 01 '20 16:02 andris155

You can actually get around this if you have the time. Download the .json directly from http://s3.amazonaws.com/Minecraft.Download/versions/1.12.2/1.12.2.json

You can then put that file into a folder in boardwalk/gamedir/versions/1.12.2

The next problem you will run into is that it cannot get options.txt. I am currently working on this

Edit: I got that link from one of the .java files in the downloader folder. A little digging in the source code of boardwalk and you will find them

KdotDevelopment avatar Feb 01 '20 16:02 KdotDevelopment

I allowed storage permissions. I added an empty options.txt, and it actually worked... kinda. It launched a black screen, but I waited quite a while and nothing happened. I dont have a 1.12.2 options.txt file, so I copied someones from the internet from like 2014. If you guys have a 1.12.2 options.txt or any other solutions, please share :)

It seems to show a black screen for other versions too

KdotDevelopment avatar Feb 01 '20 16:02 KdotDevelopment

Exception in thread "main" java.lang.ClassCastException: java.base/jdk.internal.loader.ClassLoaders$AppClassLoader cannot be cast to java.base/java.net.URLClassLoader at net.minecraft.launchwrapper.Launch.(Launch.java:24) at net.minecraft.launchwrapper.Launch.main(Launch.java:18)

Found in log_boardwalk2.txt All versions cause a black screen

If you guys have a solution for this please share 'em. My device is a Samsung Galaxy S7, Android 8.0.0

KdotDevelopment avatar Feb 01 '20 16:02 KdotDevelopment

Ok, I have made the repository public: https://github.com/ayunami2000/Boardwalk-boardwalk-2.0 You can download it as ZIP and extract (or clone it to a folder) and open the entire repository folder with Android Studio. There you can try fixing it.

ayunami2000 avatar Feb 01 '20 18:02 ayunami2000

I'm also trying to rebuild the 2.0 branch: I think? I got it back to the state I left it in 2018: it once again gets far enough to crash after calling Minecraft's main method.

https://gist.github.com/zhuowei/13d04008a20a65c2ffacf7fed77874bd

https://drive.google.com/open?id=1gfzAjBkPFp1bv4CSRVApMG2nO5v4t5rA<- DOES NOT WORK, DON'T INSTALL THIS

https://github.com/zhuowei/Boardwalk/tree/i-am-a-bad-programmer is the wip branch for attempting to get 1.15.2 to work.

Here's what I did:

  • Updated to LWJGL 3.2.3 (the old version used 3.1.6)

  • put stuff in app/src/main/assets:

  • busybox - copied from existing assets dir

  • jre.tar.xz - built from https://github.com/BoardwalkApp/boardwalk2-openjdk-build

  • lwjgl3.tar.xz - built from repacklwjgl3/repack.sh. Note that this is a completely unmodified LWJGL 3.2.3.

  • lwjgl_override.jar - built from running lwjgl3override/build.sh

  • options.txt - copied from existing assets dir

  • run it once - it won't even start

  • add storage permission by hand

  • Manually extracted lwjgl3.tar.xz and jre.tar.xz into /data/data/net.zhuoweizhang.boardwalk.charm/app_runtime/lwjgl3 and /data/data/net.zhuoweizhang.boardwalk.charm/app_runtime/jvm. (The busybox I used broke sometime over the last two years; I'll fix this by rewriting using a pure-Java tar.xz extractor)

  • run it again on 1.15.2; it crashes where I expected it to

I need to document this somewhere...

zhuowei avatar Feb 01 '20 21:02 zhuowei

I think Gl4ES does not support framebuffers. Try to build LWJGL 2 and add it to build. This will get able 1.12.2 running with decent perfomance(boardwalk 1.2 wasn't able to run it because dx runs out of memory on fastutil library convertation)

artdeell avatar Feb 05 '20 09:02 artdeell

Any updates? I and a lot of people'd be sad if it dies or something you know...

xxxxmlg69xxxx avatar Mar 23 '20 15:03 xxxxmlg69xxxx

Im also waiting for working build instructions. Even if project died (doesnt seems so), i would like to modify and compile old code.

Gouster4 avatar Mar 27 '20 08:03 Gouster4

I'm also trying to rebuild the 2.0 branch: I think? I got it back to the state I left it in 2018: it once again gets far enough to crash after calling Minecraft's main method.

https://gist.github.com/zhuowei/13d04008a20a65c2ffacf7fed77874bd

https://drive.google.com/open?id=1gfzAjBkPFp1bv4CSRVApMG2nO5v4t5rA<- DOES NOT WORK, DON'T INSTALL THIS

https://github.com/zhuowei/Boardwalk/tree/i-am-a-bad-programmer is the wip branch for attempting to get 1.15.2 to work.

Here's what I did:

  • Updated to LWJGL 3.2.3 (the old version used 3.1.6)
  • put stuff in app/src/main/assets:
  • busybox - copied from existing assets dir
  • jre.tar.xz - built from https://github.com/BoardwalkApp/boardwalk2-openjdk-build
  • lwjgl3.tar.xz - built from repacklwjgl3/repack.sh. Note that this is a completely unmodified LWJGL 3.2.3.
  • lwjgl_override.jar - built from running lwjgl3override/build.sh
  • options.txt - copied from existing assets dir
  • run it once - it won't even start
  • add storage permission by hand
  • Manually extracted lwjgl3.tar.xz and jre.tar.xz into /data/data/net.zhuoweizhang.boardwalk.charm/app_runtime/lwjgl3 and /data/data/net.zhuoweizhang.boardwalk.charm/app_runtime/jvm. (The busybox I used broke sometime over the last two years; I'll fix this by rewriting using a pure-Java tar.xz extractor)
  • run it again on 1.15.2; it crashes where I expected it to

I need to document this somewhere...

你好,我需要你的帮助。我完成了所有步骤,但是log_boardwalk2.txt输出error: Backend API: ~~ERROR~~ UnsatisfiedLinkError: /storage/emulated/0/boardwalk/gamedir/lwjgl/3.2.3-build-13/liblwjgl.so: dlopen failed: library "/storage/emulated/0/boardwalk/gamedir/lwjgl/3.2.3-build-13/liblwjgl.so" needed or dlopened by "/data/data/net.zhuoweizhang.boardwalk/app_runtime/jvm/lib/server/libjvm.so" is not accessible for the namespace "classloader-namespace"这是否是Android N的问题?我该如何解决?谢谢:D

by-scott avatar Apr 05 '20 03:04 by-scott

@by-scott maybe try to copy the files it errors from into those folders and then running the game?

ayunami2000 avatar Apr 05 '20 17:04 ayunami2000

@by-scott maybe try to copy the files it errors from into those folders and then running the game?

这个文件(boardwalk/gamedir/lwjgl/3.2.3-build-13/liblwjgl.so)是存在的。我尝试过将32位或64位的liblwjgl.so替换到那个位置但仍然无法运行。而且APP会自动将app_runtime/lwjgl3/lwjgl-natives-linux-arm32.jar里的lwjgl.so复制到boardwalk/gamedir/lwjgl/3.2.3-build-13/liblwjgl.so,即使人为删除或替换也会重新自动替换。我不明白为什么,在源码中也没有找到相关内容。 但是仍然感谢你的帮助:D

by-scott avatar Apr 06 '20 02:04 by-scott

Idk if this has been abandoned or not but it sure looks really cool. Anyway, I'm new to this and currently have next to no knowledge of the skills to do what y'all are doing, but I'm a quick study and willing to learn to try and help with this project or one similar to it. My laptop literally crapped out today, so I couldn't write or compile anything if I needed to, but I do have a really powerful phone if that helps any. I noticed some comments about programs running out of memory, and I happen to have a rooted OnePlus 7 Pro 12g ram 256g rom, so I believe I've more than enough horsepower. TL;DR I have a kick-ass phone and I'm willing to help, just tell me what to do. I only lack a PC for now :)

Soul-Void avatar Apr 19 '20 02:04 Soul-Void

I believe the memory problem isn't caused by the phone's hardware but rather a limit Android places on apps. From what I know this can't be easily changed.

szarik001 avatar Apr 19 '20 02:04 szarik001

I see what you mean. I started messing with mcinabox and the issue seems to lie in that android is limiting ram, and past that, 32bit Java for mc limits max ram to 2gb, which sucks. Max I can allocate on mcinabox is 950 without instant crash.

Soul-Void avatar Apr 19 '20 06:04 Soul-Void