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
 
Oh yeah, forgot was I was going to say about bluetooth controls: when you detect input from a bluetooth keyboard (or gamepad - do those work? I'll find out later), you should remove the onscreen control overlay, because it's not being used.... If someone touches the screen, then you draw it again until you detect bluetooth input.

... and you really need to disable the android Sleep mode, heh... While I wtas typing this, my table fell asleep, and Quake go bye bye. 
Music 
Is there any way to add original soundtrack? 
I Had An Epiphany 
If I use 3 fingers on the left like I do on a keyboard, it's actully not bad. I still can't steer and shoot at the same time though. 
"Quitting" An Android Application Is Impossible 
https://forums.libsdl.org/viewtopic.php?p=52442
https://stackoverflow.com/questions/6361966/exit-android-app-kill-all-processes

Android apps are not automatically unloaded even after the onDestroyed() callback, e.g. when they are in the destroyed lifecycle state. They will only be removed from memory if more recently started apps would require memory themselfes.

You cannot completely "exit" an Activity on Android (like on Windows or other OSes where exit() resp. return from main unloads the program from memory). Android will decide for itself whether and when to remove an Activity from memory.

Now I understand why I end up with an accumulation of several apps in the "Multitasking Screen" pic after I closed them.

The reason behind this design is the fast restart of applications (caching). 
@gunter, @dudeq - Bluetooth Keyboard Hide 
@dudeq - Not yet, but it'll be coming.

@gunter - I have seen that happen on rare, I also know how to fix it.

As far as detecting a Bluetooth Keyboard, I don't know that SDL2 provides a method for that, but I think what would work just as well is that ...

1) opening the menu with the keyboard causes the in-game controls to hide

2) opening the menu by touch would unhide the game controls

After all is quite possible to not want to use the keyboard for playing, just entering console commands.

This scheme would satisfy all preferences and not require a setting, so it would be real convenient. 
Getting Maps On Iphone 
What about using quaddicted? 
@fifth 
(UNSUPPORTED - BUILTIN QUADDICTED/QUAKE INJECTOR)

(Requires registered Quake and QuakeDroid doesn't check to see if registered vs. shareware)

In the console

1) type "install rapture"
2) type "game rapture"
3) Do Single Player->New Game

I have installed 6-7 mods with it -- things like (kinn_marcher, nihilore, rapture), but would prefer to test it more and think more about the structure on Android. Also johnny law provided me an example or 2 were unexpected file structure in a map jam confused the unpack a bit.

So "Should work, unsupported, use at own risk" because I want to exhaustively review it. 
@fifth - Oops You Said IPhone 
Yeah that isn't a problem on iPhone, but you can't really mess with your own Quake folder on a iPhone, like put map from your hard drive on it. 
 
I guess the only solution for mappers for iphone would be to design with a controller in mind and release as normal. 
Excellent Port, I Can Play AD (with Broken {alpha Textures) On My S8 
The controls leave something to be desired. As was said, it'd be nice if jump/attach were switched so attack is in a more naturally reachable position, maybe the ability to manually place the buttons.

Also the icons are a little faint, and the movement buttons are not very easy to use.

Any chance of a Quake-Touch type radius where on the left side is like a trackpad (like the aiming?)

As crappy as Q-touch is the controls are actually very natural and it's pretty easy to move around, whereas with this setup the individual buttons and binary movement make phone play much less enjoyable 
 
Here are my current thoughts on control options:

So you have possibly an onscreen graphic of a circle on both the left and right side of the screen. Left circle is movement, and right is aiming. Each circle would necessarily have a dead zone in the center, but as you move your finger around in the circle you would just measure the distance from the center and the direction of the line. These pretty much emulate analog joysticks. If you move your finger outside the circle it just reads as the maximum value which is the same as touching the edge of the circle, since you are noting the line from center to your finger position.

Ok, so left circle is move forward, back, left, right. Right circle behaves the same way for aim up, down, left, right. But if you double tap the right circle, you start firing and you keep firing as long as you don't lift your finger, and you can still aim using that circle while firing.


Just above the left movement circle there is a virtual Jump button, so that if you slide your finger up to it (outside the move circle) you keep moving forward and you jump.... These should probably also still be a virtual jump button above the right circle for tapping, because "jump while aiming up would not work well, but it could still be tappable if you aren't aiming.


Now you could get fancy, and not draw set cirle areas, but within a fairly large area on the left and right of the screen, you just detect the first place a touch occurs, and set that as the center of the circle (and then possibly draw it once a touch occurs). The movement controls would work the same as I described, just by measuring the distance and direction of the finger starting at that first touch point. When someone lifts their finger, you just forget the last touch start point and make a new one when they touch the screen again.

You may need a permanent jump tap button somewhere on the right to go with this scheme, but that button could also be dynamically relocated to just above the wherever the touch occurs and the circle is positioned when that happens.

The move circle could optionally respond to a double tap to toggle to walk mode, or to trigger a jump, or something else.


I also do think the weapons in the status bar do need to be touchable to select a gun (actually, to trigger impulse 1-9), abut if you swipe left or right along the weapon area, it will cycle weapons left or right. Touching the player face could activate messagemode. 
@Bloodshot 
Any chance of a Quake-Touch type radius where on the left side is like a trackpad (like the aiming?)

Sure. I check that out and see the scheme there. 
@gunter 
I'm considering some of those kinds of concepts. I feel if I can just get the controls more tuned ... 
Any Possibility For Alpha Texture Support? 
AD works great aside from that 
@bloodshot 
I have something in the works ;-) Might take a few days or perhaps I'll be very lucky and it could go faster. 
QuakeDroid Updated 
New Version :Just Reinstall
(Will show 1.92 in console)

New:

* Switched attack + change weapon position (everyone)
* Sepulcher support (pulsar)
* Underscore shows in on-screen keyboard (qmaster)
* Bluetooth keyboard use auto-hides in-game controls (gunter)
* Empty quake_command_line.txt doesn't hang. (qmaster)
* Water alpha vertical lines fixed (qmaster)

Looked into
* Immersive mode - Not seeing clear-cut SDL2 support in a stable SDL2 release. But will keep and eye on it.

Other issues/suggestions pointed out are on the list, I hope to get some more done in a new version in a few days.

Thanks for the feedback/suggestions/bug reports, Android is diverse in device variety and it has been greatly helpful! 
 
Hm, the onscreen control overlay doesn't seem to go away when I use my bluetooth keyboard(s). The overlay does vanish when I'm using messagemode though.


Change
Jump
Attack

is not a good layout. Your default finger position is on Attack. Other buttons should be within one button of that finger position. With Attack all the way at the bottom, it's a large motion to get all the way up to that Change button. That's why I think it should be:

Jump
Attack
Change


With thumb resting on or over the Attack button, it's easy to get to either Jump or Change.


So, it seems many mini bluetooth keyboards (like mine) have no Escape key. I can bind some other key to togglemenu, but it doesn't work like Escape, in that it won't cancel messagemode, for example. Luckily you have the little top-left triangle that acts just like an Escape key.

My little bluetooth keyboard has tougher problem though. Pressing Func+Up or Func+Down should give me PageUp or PageDown. But this keyboard is some weird generic thing (I have a different one that does work correctly in this regard), and instead it triggers Windows+Up and Windows+Down, so I can't scroll up and down in the console. So how about allowing me to swipe up and down in the console? A tap on the console should obviously trigger the onscreen keyboard, buy an up or down swipe could instead trigger PageUp/PageDown to scroll the console.


I also have a almost full-size Mircosoft bluetooth keyboard, and while it does have an Escape key, it doesn't even have Functionable PageUp/PageDown, yet it has Functionable Home/End.... So no console scrolling with this onn either. Though if I were going to use a large keyboard, I may as well just use my XP Netbook, heh. 
 
Looks like I needed to provide more detail.

Do you have a tidle/backquote key? That will trigger the console and cause the keyboard to hide.

Let me know.

Working on game controls come takes time, I did not have time to do anything with control. 
 
Oh, maybe we are talking about a different thing.

I had suggested that the onscreen control overlay be completely hidden in-game if a keyboard is being used.

Yeah, I can effectively use the tilde key and pull down the console -- the onscreen overlay doesn't show on top of that.

I'm wanting a way to hide the overlay during game play. Like if input is being detected, but no screen touches are being detected, that should indicate that someone is not using the touch screen controls, so the overlay can be hidden. 
 
Yeah, probably so but that thought didn't cross my mind at the time, haha.

So for now, press tilde and it will hide the touch controls. ESC to the menu will cause them to reappear.

Next time, I'll have any keypress hide the controls. 
Bugsmashing Feedback 
Underscore on console touch keyboard works great!
Empty command line file fix confirmed. (I like to keep it empty for vanilla.)

BUT water alpha no longer works. I tried different values of r_wateralpha but no luck.

Bug report:
When the player camera is looking too far up or too far down past about +/- 80 deg, the turn direction flips and rotates the view the opposite way. Expected:slide thumb right looks right, slide thumb left looks left. The wierd part is that it only seems to happen if I make one continuous thumb swipe that looks up/down and to the side in a sweeping thumb arc such that the view moves past a certain threshhold angle for pitch and only then does the yaw reverse. If I make quick single swipes it works correctly regardless of view pitch. 
Galaxy S9 
Very excited for this, but when I run it I get a blue screen tint to the screen as the opening demo plays. I can't access any menus at that point so the demo keeps playing with a blue tint to everything. I am testing with a Galaxy S9- any ideas? Thanks and congrats to Baker. 
@Virto 
Just to clarify: Can you open the menu? There's a small triangle on the upper left side of the screen that opens the menu.

@Baker

One other control suggestion to think about: Double-tap forward to jump. I think this would be a very elegant option. When I release forward I still have a tiny bit of momentum. That gives me a little time to jump by double tapping. Even if you use the radial / virtual joystick control scheme I think this would work. Would eliminate the need for 3 buttons on the left side of screen. 
Dang! 
Meant to type "eliminate the need for 3 buttons of the right side of the screen down to 2" 
@Virto 
That's unfortunate. This was tested on a Galaxy Prime (64-bit) before release.

My only ideas are reboot the phone, make sure you aren't out of storage -- but that is probably not much help.

Sorry that it isn't working on your phone. 
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.