Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Moderator: Forum moderators

Post Reply
User avatar
mikewalsh
Moderator
Posts: 6208
Joined: Tue Dec 03, 2019 1:40 pm
Location: King's Lynn, UK
Has thanked: 806 times
Been thanked: 1998 times

Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by mikewalsh »

Morning, gang.

With many thanks to @Jasper , I'm now aware that the classic FPS game "AssaultCube" actually has a Linux port. I've been fooling around with it for years via the Windows portable app running under WINE. For me, it's just a side benefit, because I have WINE installed for many other things.....but I wouldn't expect anyone to install WINE just for this.

It's quite svelte by gaming standards; the entire package, as built, is only around 70 MB. That's compared to many others being easily several gigabytes in size, so this is a "featherweight" by comparison.

----------------------------------------

I very soon discovered there's several different builds, largely dependent on the version of libcurl that's installed. The build compiled for libcurl3 runs a treat under Tahrpup/Xenialpup, while that compiled to work with libcurl4 runs nicely under Bionicpup/Fossapup. Given that the bulk of the app is simply data - the actual binaries are pretty small - I've combined the two sets of binaries together with two distinct launchers (which auto-detect your OS architecture & fire-up the appropriate binary for you).

The portable's main LAUNCH script auto-detects which version of Puppy is in use, and selects the appropriate launch shell script to use, along with performing the usual sym-link gymnastics with the config files. I've surprised myself with this; it all seems to work rather nicely!

The usual scripts permit the addition of a Menu entry to run it from wherever the portable is located.

----------------------------------------

For those of you interested in such stuff, this is NOT the very latest v1.3 build. This is the previous v1.2 build, which is approximately 7 years old. I know this sounds horrendously out-of-date, but there was a huge gap between the two builds, due to the developer having a ton of personal issues over an extended period of time. The upshot is this; v1.2 will run with a boatload of Puppies across the spectrum. v1.3, however, because it's been compiled against very new versions of everything will ONLY run under Fossapup64 or newer...

.....and who am I to deny the pleasures of this neat FPS to the Puppy membership, just because they don't all run the very newest of everything all the time?? This way, just about everybody can enjoy it..! :D

If anyone should fancy giving this a look, y'all can find it here:-

https://mega.nz/folder/WD4iWbwb#kMKegZzg8Oml0prO_r44sg

The usual caveats apply:-

  • Download

  • Unzip

  • Place it anywhere you want, though outside the 'save' IS preferable

  • Click to enter

  • Click on 'LAUNCH' to fire it up

The usual Menu entry can be added if required, as mentioned above. Enjoy!

Mike. ;)

User avatar
Jasper
Posts: 2105
Joined: Wed Sep 07, 2022 1:20 pm
Has thanked: 869 times
Been thanked: 490 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by Jasper »

@mikewalsh

Thank you for doing this, it was unexpected and is greatly appreciated.
It's a good game for have as a portable application and it doesn't tax most modern pc's in it's requirements.

I am experiencing some difficulties in downloading the application at the moment. Is this the same for anyone else?

BTW I do have another nominee as a game. It is a RTS called O A.D. It is much larger and would be a candidate for an installation or SFS.

Please, do not see this as a request. Just wanted to know if it would be possible to make it portable in the same fashion as Assault Cube.

https://play0ad.com/

https://trac.wildfiregames.com/wiki/Com ... ceArchives

User avatar
mikewalsh
Moderator
Posts: 6208
Joined: Tue Dec 03, 2019 1:40 pm
Location: King's Lynn, UK
Has thanked: 806 times
Been thanked: 1998 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by mikewalsh »

@Jasper :-

I didn't exactly see your mention in the other thread as a "request". AssaultCube is summat I've been fooling around with for years, but I've always used the Windows-portable version under WINE. When you mentioned there was a Linux port, I thought "Hmmm....." and the cogs started creaking and groaning as the rust was forced off them! :D

I'll state here and now, I am NOT a hard-core "gamer". Frankly, I can think of better things to do with my time, but as a full-time carer, I get days when it's all go from dawn till dusk, then other days when I have a ton of spare time to myself. It's unpredictable, y'know?

However, I've always liked FPS games ever since a mate introduced me to Doom & Quake back in the mid-90s. I quite enjoy the odd half-hour or so with these sorts of things, though luckily I DO know when to quit..!! :lol:

-----------------------------------------

When I found out about the different libcurl versions I thought I'd better download both to try them out. I run

  • Fossapup64

  • Bionicpup64

  • Xenialpup64

  • Xenialpup32

  • Tahrpup64

  • Tahrpup32

.....plus a couple of older 32-bit 5-series Slackos, and a copy of 10wt3ch's Studio 1337, frankly one of the most complete & amazing Puppy-based DAWs I've ever found. And then there's my 'daily-driver', a 'spin' on BK's old Quirky64 'April' 7.0.1, which runs some stuff natively, and some from a Fossapup64 'chroot'.

I found the older libcurl ran OK with Tahr & Xenial, whereas the newer libcurl played nice with Bionic & Fossa. I was contemplating building two different packages, but then I realised that the bulk of each package was simply data.....and identical across both packages at that. The only part that varied was the actual binaries, which are only a few MB in size. So I put the libcurl4-compatible binaries in a sub-directory within the 'bin_unix' directory of the libcurl3-compatible build, duplicated & re-named the assaultcube.sh 'launcher' & modified it to point at that.

The shell scripts auto-detect architecture and select the appropriate binary. Having combined both in this fashion, I then used the same trick I employ in some of the 'portable' browser launchers, and grepped /etc/os-release to auto-detect the Puppy in use.......then wrote the main launch script to fire-up the appropriate shell-script accordingly, depending upon the required version of libcurl.

This way, one package covers multiple Puppies.

----------------------------------

For 0 AD, AFAIK it's always been available through the repos. I would think the simplest way to see what you're dealing with would be to download it with dependencies using the PPM, but DON'T install it..? Then unpack everything, look at what's there, and finally figure out the simplest way to combine it all into a single package.

Just my two-penn'orth for that one! Have you got the hang of building SFSs yet?

Mike. ;)

sonny
Posts: 725
Joined: Mon Feb 15, 2021 4:50 pm
Has thanked: 484 times
Been thanked: 173 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by sonny »

I had no idea you liked FPS. One of the reasons I put Fossapup in PC:IMPOSSIBLE was so that we could have a fragfest at the kennels someday. The Linux-native FPS god, Quake III Arena, plus Enemy Territory are both fully loaded in there.

User avatar
xenial
Posts: 504
Joined: Mon Jul 13, 2020 7:41 am
Location: Lincolnshire.UK.
Has thanked: 92 times
Been thanked: 41 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by xenial »

Flash games are my thing,notably adventure games..puppy thankfully gives me the ability to still play flash..my flash library currently stands at 100,000 titles.

User avatar
Jasper
Posts: 2105
Joined: Wed Sep 07, 2022 1:20 pm
Has thanked: 869 times
Been thanked: 490 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by Jasper »

@mikewalsh

I am trying very hard not to use WINE as I want to be able to use native applications. That's only my personal choice. So far, I have found lots of working good alternatives for Windows applications. Mind you I'm not a heavy PC user, just day to day stuff.

I'm not a gamer, but I have enjoyed Age of Empires, so was intrigued that there is an Open Source version available.

Thank you again for making the applications, time is precious.

Carers are unsung heroes and always taken for granted with the expectation of others thinking that you will can do everything with little or no support. Bless you.

The games have only come to my attention as I have more time over the festive period. So, I was thinking a few hours here and there might help me unwind and not get dragged into conversations/activities that I would rather not get involved in. Anything for a peaceful life :lol:

Your explanation of how you build the applications is very interesting and useful knowledge. I don't know how you manage to figure it out though!!

It's great to have applications that crossover to different builds. I only ended up with Fossapup as when I came from the home page I looked at the forum and saw that Fossapup had the most activity. That's what made me decide on which build to use. Plus the fact it had X64 in it's title :lol:

Actually, I had consider moving down to an older build as I am guessing that it would use less RAM and I only have 2 main applications that I use daily. As long as they are supported and function correctly.

Also, I have tried again to download the game but it still gives me the same error. In my browser (Palemoon) I have Privacy Badger, Adblock & HTTPS always installed. Deactivated Privacy Badger but still no joy.

As for the SFS files I haven't found anything just yet that I could add. The Doxygen SFS, I know it popped up a number of times for some applications but the recent ones have had no call for it. I am sure something will pop up :lol:

User avatar
Jasper
Posts: 2105
Joined: Wed Sep 07, 2022 1:20 pm
Has thanked: 869 times
Been thanked: 490 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by Jasper »

Just my two-penn'orth for that one! Have you got the hang of building SFSs yet?

hahahhaha when you said could download the game by the PPM, I thought that would be an ideal candidate for me :D

User avatar
mikewalsh
Moderator
Posts: 6208
Joined: Tue Dec 03, 2019 1:40 pm
Location: King's Lynn, UK
Has thanked: 806 times
Been thanked: 1998 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by mikewalsh »

@Jasper :-

You're not the first one to have issues downloading from my Google & MEGA a/cs. Try this one; I've uploaded it to MediaFire. Most folks don't have trouble with this one:-

https://www.mediafire.com/folder/m2hw6w ... e-portable

Let us know if that one's okay for you.

As for how I "figure things out" when building packages, well.....it's all down to experience. 'Practice makes perfect', and all that, y'know? Much of what's in my builds is already there in whatever core package I turn into a 'portable'; in reality, I'm just adding a few items here & there to make stuff work in a more convenient way for Puppy, and adding or re-hashing scripts.

Ten years ago, when I was a wet-behind-the-ears Puppy noob, I never dreamt I'd be doing some of what I almost take for granted today! The interest was always there, ditto the curiosity & determination.......and I found out I seem to have a 'knack' for package-building. It's my way of paying-back this wonderful community of ours for all the help I've had from them over the years. :)

Distros are ten-a-penny. But they're ALL pretty pointless without having software to run on top of them......that's the whole idea of any OS. I shake my head in amazement at the number of Linux geeks for whom constantly re-installing distro after distro appears to have become their sole reason for having a computer in the first place. Actually doing something with it appears to be of distinctly secondary importance...!

Mike. ;)

User avatar
Jasper
Posts: 2105
Joined: Wed Sep 07, 2022 1:20 pm
Has thanked: 869 times
Been thanked: 490 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by Jasper »

@mikewalsh

I had a good think about what you said regarding experience and having a knack for doing things.

Then I remembered @wiak comment here

One important matter is that if someone suggests a solution, it becomes important to just try that solution and carefully and not mix the attempt with other changes to the way you are doing things, otherwise it becomes impossible to track down (through a process of elimination) what might be causing issues. And if you are ever given a step by step procedure to try, make sure to try these steps exactly without any deviation or omission. I say that, because the greatest frustration I've sometimes felt when offering advice is when the person I am trying to help keeps mixing up all sorts of steps from myself and others all at once and, not surprisingly, gets nowhere and just confuses all of us In terms of trying to troubleshoot what the hell is going on...

Personally, from early in childhood, I was taught to 'think like an engineer', which I came to understand meant logical precision and striving for absolute (despite impossible) accuracy. Playing chess a lot when young helps... I think anyway. But I also have my 'bad' days, when logic seems to no longer work at all, and the simplest matter I used to know always works suddenly refuses to work - and on really bad days, everything I try becomes like that... Then my logic mysteriously returns (despite my panic feeling that it has deserted me forever) and the world becomes good (in that way) again. Don't rush, be methodical, make changes only very slowly and with logical reasons and one step only at a time. Often at bad times to just give up for the day and sleep on it and wake up with the dreamed solution (I find that actually happens quite often). Usually works in the end (such that the original huge issue ends up feeling tiny and thought passes through your mind - why on earth did I not see that in the first place?). An engineer, by the way (if you are not one) always opposes the growing feeling "I can't do it" by the internal thought "of course you can, you are an engineer".

Another mystery is that sometimes the apparently unsolvable technical issue just suddenly disappears and all begins working and without any rhyme or reason. I just accept that good fortune when it happens.

Guess, there's a trait that seems to run through members here.

I am incredibly content with Puppy Linux. It was the first OS I used and was attracted to it as it was a small size. So, downloading was quick and booting up a few seconds later. What put me off the other distro's was simply that they seemed to be DVD size. Literally everything including the kitchen sink has been thrown in. With this OS, you have a stable core of applications that work OTB and then you can add to your heart's content.

I like the fact everyone seems to be able to tweak the applications to add functionality or be able to fix any issues that come up.

Thank you once again for uploading the application to another host. Trust me, I will enjoy playing this :thumbup2:

**EDIT** Grabbed the files in seconds this time round. Not sure why I had problems with Mega in the first place :roll:

User avatar
Jasper
Posts: 2105
Joined: Wed Sep 07, 2022 1:20 pm
Has thanked: 869 times
Been thanked: 490 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by Jasper »

Patience is a virtue, so I need to contain myself :lol:

I need an additional piece of software but not sure what I need to download.

Can you let me know?

User avatar
mikewalsh
Moderator
Posts: 6208
Joined: Tue Dec 03, 2019 1:40 pm
Location: King's Lynn, UK
Has thanked: 806 times
Been thanked: 1998 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by mikewalsh »

@Jasper :-

You want the second one from the bottom....libsdl1.2debian_1.2.15+dfsg2-5. I know it says it's already installed, but I checked a clean install of Fossa64 and it's not part of the base SFS. It IS, however, part of the adrv.sfs. Are you running sans adrv, giving a very minimalist Fossa64? If that's the case, this is why it says it's installed yet is apparently missing....

I run with the adrv all the time. That's why I had no problems with it, y'see.

Just a thought, FWIW.

Mike. ;)

User avatar
Jasper
Posts: 2105
Joined: Wed Sep 07, 2022 1:20 pm
Has thanked: 869 times
Been thanked: 490 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by Jasper »

Thanks for pointing this out to me.

I am using the default adrv.sfs that came off the original ISO with no changes from me.

So, can I just download it again and then install and save?

keniv
Posts: 658
Joined: Mon Jul 13, 2020 2:18 pm
Location: Scotland
Has thanked: 111 times
Been thanked: 67 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by keniv »

@mikewalsh
I'm not really into playing games but I thought I'd try this one. I've downloaded and installed it. On FossaPup64 9.5 it launches OK but I get a lot of screen flickering on the startup screen. I wondered if my machine was not up to it. I've attached it's specs below. I looked at file:///initrd/mnt/dev_save/Portables/AssaultCube_multiarch-portable/AssaultCube/docs/getstarted.html on my machine. It gives the bare minimum system requirements as that shown below.

Code: Select all

    Processor: Intel Pentium III or AMD K7 range.
    GFX: NVIDIA GeForce 256 or ATi Radeon R7000.
    RAM: 192 MB.

I think my machine is alright for this but I'm not sure of the graphics card which as you can see is a Mesa DRI Intel(R) G41 (ELK). As far as I know I have no special drivers installed for this nor can I see how to do this. I do remember that older puppies sometimes had the option to do this, however, in FossaPup I can only find options for nvidia drivers. Before I go any further can you tell me whether I can realisticly expect this gaim to run on my machine give the attached specs?

Regards,

Ken.

Attachments
machine-spec.png
machine-spec.png (82.86 KiB) Viewed 1666 times
User avatar
mikewalsh
Moderator
Posts: 6208
Joined: Tue Dec 03, 2019 1:40 pm
Location: King's Lynn, UK
Has thanked: 806 times
Been thanked: 1998 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by mikewalsh »

@keniv :-

Eurghh.....TBH with you, Ken, I wouldn't like to say about the graphics card/chip 'requirements'. Dells are pretty forgiving, though.

Like you, I'm only a casual gamer, and just occasionally want to waste the odd half-hour with summat that requires little thinking about! I'm not in the least bit interested in triple-AAA+ titles, like Crysis, Far Cry, Battlefield, etc. The sort of things I play are usually indie titles, with far gentler requirements to begin with.....so most 'average' GPUs should be capable of handling them.

I do have a copy of Half-Life 2 that runs under WINE, but even this must be 20 years old! Runs pretty well, if I'm honest.

I may have investigated, experimented, tested & finally built this portable package on a modern Intel quad-core with 32 GB DDR4, but AssaultCube runs quite happily on my recent purchase, the 2008 Dell D630 Latitude (Core2Duo - slightly newer than your CPU, but not by much - and 4 GB DDR2). It does have a built-in Nvidia Quadro mobile GPU, it's true, but this is quite an elderly beastie, and isn't as advanced as the HD610 built-in to my desktop rig's CPU (which doesn't get used anyway 'cos I run an Nvidia card here, too).......yet for all that, it's quite smooth, and doesn't judder or flicker or pull any other silly stunts.

My suggestion? Run with it, and see what it does..... The worst that can happen is it may freeze-up & require a hard power-off via the power button. Which won't hurt Puppy at all, as I'm sure you're aware!

Mike. ;)

keniv
Posts: 658
Joined: Mon Jul 13, 2020 2:18 pm
Location: Scotland
Has thanked: 111 times
Been thanked: 67 times

Re: Linux port of AssaultCube - in multi-arch, multi-Puppy, 'portable' format...

Post by keniv »

@mikewalsh

My suggestion? Run with it, and see what it does..... The worst that can happen is it may freeze-up & require a hard power-off via the power button. Which won't hurt Puppy at all, as I'm sure you're aware!

Thanks Mike, I'll do as you suggest above. I'll need to read the "For New Players" stuff etc. It's a long time since I've played any games but as you say it might be fun to waste the odd half hour.

Regards,

Ken.

Post Reply

Return to “Games”