News | Forum | People | FAQ | Links | Search | Register | Log in
QuakeDroid - Quake For Android
QuakeDroid is Android Quake that should run on any Android phone made in the last 5-6 years, but has only been tested on 2 phones (one 32-bit, one 64-bit).

http://quakeone.com/quakedroid

Designed to have controls similar to popular mobile games (/cough Minecraft). Went deep on the documentation to try to empower the user.

Does not require Quake to install, it downloads Quake shareware on startup.

* How to put your TrenchBroom/J.A.C.K map on your phone
* Where is your Quake folder?
* Difference between shareware vs. registered Quake
* Put registered Quake pak1.pak from Steam/GOG on your phone
* How to set a startup command line.

The menu has 2 methods of navigation, you can touch items like "Single Player" or manually slide the volume slider bar or use the menu nav buttons.

* Tap-fire (double tap on an Ogre to shoot it)
* Drag-look (like Minecraft)
First | Previous | Next | Last
 
Delayed some due to adding game controller support, which proved to be a few steps harder than expected.

(Required SDL2 upgrade which happened to require an entirely different Android build system than the version I had been using (no fault of SDL2, Google changed the Android SDK/NDK) then discovering desktop SDL2 and Android SDL2 aren't really the same when it comes to game controllers -- so a series of experiments was required discovering differences until it worked.) 
Any Update? 
On when dual thumbstick style touch controls will be added? 
 
I'd like to try to have controls "right" by the end of this week. 
QuakeDroid With Gamepad Support 
Download: QuakeDroid w/Controller Support source: here

* Gamepad support (oGkspAz, Gunter asked for)
* Rare blue screen tint issue RGB565 (virto)
* RAM issue (brassbite)

Features the controller support implemented identically to Quakespasm, adapting the battle-tested controller code written by ericw (who supplied a reference on how to it efficiently).

This beta is to get the gamepad support out the door while a much more comprehensive update is in the making, hopefully out late this week.

Button names LTHUMB, RTHUMB, LSHOULDER, RSHOULDER, ABUTTON, BBUTTON, XBUTTON, YBUTTON, LTRIGGER, RTRIGGER. The DPad acts as arrow keys (and also supports diagonal movement), left stick moves, right stick looks (swappable). 
 
Glad to hear you got it working! I can test an Xbox 360 controller on my tablet later today. 
 
I would test this... but... my little Dell Venue 7 tablet has decided that it is dead now. :u

I shall have to acquire another Android device.


Also, you need to add that gamepad support into Mark V as well. 
@ericw, @gunter 
@ericw -- I ended up writing a short story about it on the SDL2 forums explaining how it behaves differently on Android vs. desktop, perhaps for the benefit of someone else using SDL2 on Android.

I'm approaching QuakeDroid from a "perfect prototype" mentality from a user perspective. Or at least trying to. I'm only human.

Butane provided a link to q2 android (qii4a) and I saw that the DPad worked with my controller so I wouldn't accept the DPad not working in QuakeDroid -- a small addition beyond what your existing code did.

@gunter - aw that sucks. Sorry to hear that :( 
Controller Would Make All The Difference. 
Hi guys,

I like this project a lot, and would love to get all my fav quake mods up and running on my android. But its damn near impossible to play without a controller.
I have a MOGA hero controller, is there any way this can qork with quakedroid? What to I have to do so set it up? 
#149 
Make sure you installed the special build a couple posts up.
Pair your bluetooth input device.
Go into Quakedroid
At this point I was able to use the DPad and LStick (A- and B-Buttons) for Menu Navigation.
Ingame the walk and look stick were working.
Then I went to options and to controller options and rebound all the necessary buttons.
My gamepad: Gamesir G3s, can recommend, really noice 
... 
My setup:
R2: shoot
L2: jump
L1: last weapon
R1: next weapon
Had a blast playing, much more fun than touch. Don't get me wrong because I got along quite well with the touch controlls.

Sadly the Kindle still shows a white screen whilst playing the demo with sound. I'm looking forwards to the other graphics of Mark V coming to Quakedroid soon, or what I think I saw in the screenshot. :D 
 
"@gunter - aw that sucks. Sorry to hear that :( "

Heh, thanks.
Ya know, it really does suck! Hah, it's way more stressful than it should be when one of our little tech devices kills over.... But it served me well, daily, for the last 4 years. I think something in the hardware gave out, because factory resets do nothing.

In any case, I've found a nice little 7" RCA Voyager Pro Android 6 tablet on walmart.com for just under $50. Gets high reviews. And comes with a nice little keyboard case and free 2-day shipping, so I should be back up and testing Quakedroid in a couple days. 
 
@apm - Thanks! Always nice to have more interested parties. Like brassbite said, should work.

@brassbite - I only added controller support in that beta but I think I'll do another incremental and throw that in plus, if I am fortunate, a 2nd with what you correctly saw in a screenshot :D

@gunter - Awesome! That's funny that it comes with a keyboard too for under $50. 
 
I didn't have any luck with my Xbox 360 wired controller. (no buttons/axes had any effect). Here is the qconsole.log:
https://pastebin.com/94T2xJ1N

It doesn't look like it was even detected as a joystick? 
@ericw 
Hmmm. Does it show as a bluetooth device in Settings->Bluetooth?

I suspect it is not showing as a joystick to SDL, but in the next incremental I'll add a warning for devices that cannot be opened (I can't entirely rule this out, I'll have it print unopenable devices in the next incremental).

I posted a code block @ insideqc code that shows what it does when considering a device. Note it always prints something and didn't for your XBox 360 controller.

I have the number of buttons check to exclude the accelerometer.

By the way, should you ever be interested in compiling, it is rather straightforward and I'd be happy to assist. 
GL QuakeDroid Beta - Fog, Alpha Textures, Mirrors, ... 
Download: GL QuakeDroid
Screenshots: Rubicon 2 Honey QMB Option

Suggested: if QuakeDroid has been loaded before ...

1) Settings->Video Options->Brightness: Texture Gamma
2) Settings->Preferences->Autoscale: Auto Large
3) (Option) If you want QMB particles Preferences->Effects: QMB

The above are new default settings but would be off in an existing config.cfg. 
Re: Xbox Controller 
It's a wired USB controller connected to a "USB->USB C on the go" adapter. I actually don't have any other games to test it with so I need to do some more testing on my end, and I'll try compiling myself this week and see what's happening. I'm worried that the SDL "Joystick" api won't be compatible across different joysticks. As I understand it, they added the "Game Controller" api's to SDL2 as a layer on top of the Joystick API to give a consistent view of joysticks, so when the API says "left stick" or "A button" etc., it's actually that stick or button on the joystick.

Whoah - GL support! Nice! 
 
Runs well for me, but can the GL error pop-ups during startup be suppressed please? At least for second and subsequent runs? Having to click through 4 or 5 of them every time gets old real fast. 
@mh 
Whoa! I get zero GL errors during run, but I did the build in debug mode in the event someone had issues.

I'll suppress those in the next incremental and instead record them to log, but I want to know what they are. 
@ericw 
See the Butane qii4a post/link for an APK download for a different game with controller support.

Regarding the SDL2 joystick API ---

This is all new to me -- that being said, I looked at the SDL2 2.0.8 source code and it leverages native Android controller support which is extremely robust and standardized and mature.

So I am thinking the controller support is going to work almost universally.

Nonetheless, this is the thread where we find these things out ... 
@mh - Part 2 
I want to see more feedback, but the fact you have GL errors already annoys the hell out of me. I spent time studying the OpenGLES specs and was under the impression that it was pretty damn standardized.

/Pioneers, arrows in the back -- this is the whole purpose of exploring engine developing and killing these kinds of things, but damn ... 
GL Errors 
Here's what I get; it's an el-cheapo Nokia 5 btw.

First is "Alert: GL_EXT_texture_filter_anisotropic" but no other info.

Then a 1280 at line 221 in GL_Evaluate_Renderer_CheckExtensions.

Then another 1280 at line 222, same function.

Then a 1280 at line 223.

Finally one more 1280 at line 224.

Following which it loads and runs fine. LIT files work, and VIS files also seem to do so; I have a bunch of them in a pak2.pak so I'm assuming it's getting them (I've deliberately avoided reading the code for feedback purposes). 
@mh 
Alright, well -- gives me an action plan.

And I'll act on it and address in the next build. 
Still Trying To Get My Moga Hero Controller To Work 
which is unfortunate because i really want to have quake (and all the expansions) on the go.

the controller can controll the phone in the moga pivot app so its not a bluetooth thing, the controller works, but does nothering in qd.

please could you suggest a controller which you think is best to use for quakedroid. (im willing to pay for a new one just for this project).

I dont think my moga hero can work with quakedroid, i sure cant get it to work. I dont even know if it works outside of moga pivot games, confusing.

If anyone does mange to get this working with a moga controller please let me know so i can know if its worth persisting with this controller.

Might be worth considering moga support for quakedroid, seeing as i think it's a popular controller? Let me know what you think. 
@apm 
brassbite suggested a controller.

My controller, a ERO VR was $19.98 at Walmart. 
 
Make that EVO VR.

/Typo corrected 
First | Previous | Next | Last
You must be logged in to post in this thread.
Website copyright © 2002-2024 John Fitzgibbons. All posts are copyright their respective authors.