I see the 2d awt interface for a split second then the screen goes black until the games starts.
But doesn’t that mean that LWJGL on Macs has a problem with the AWTGLCanvas? Maybe it’s something that can be fixed in a future version?
You are right. I don’t rush to change anything, i still got lots of work on gameplay, bots AI, dynamic terrain generation and so on I will return to 2D issues as soon as i get no other pending tasks on client side. This also means that no new 2d interfaces will be added to the game unless it will become obvious which is the best way to go with 2D.
btw, here is another thread about awtglcanvas issues
New version is available !
click Play Online to play online demo. (server may be somewhat laggy today)
click Here to see new screenshots
New features since 0.96:
- switched from AWT GL to GL renderer.
- redesigned user interface to be GL based
- added support for TTF fonts in GL UI
- new look for shadows
- terrain is now generated on the fly, to allow to allow smooth huge locations.
- better texture transitions
- bot team AI improvements
- new game objects
- skill points and level-ups.
Guide for this demo version:
Login:
Enter username/password - if the user with specified login does not exist then new account is automatically created.
Locations:
You start in the north-western part of Olbridge Island, in a small town - Radford. There is an underground location with some NPCs and a shop - 50 meters to the west from where you start - Coalition Bunker. You can also visit the Junk Yard. Follow the eastern road through the forest.
NPCs:
There are 3 NPCs in Coalition Bunker:
Corporal Edison - gives you quest for Muton Heads. Gives some money and increases reputation with Coalition after you complete his quest. Also, can train you new skills when you reach new level and get some Skill Points.
Enzo - shop owner. Trades in basic items. You have 5000GP at the beginning - so go to his shop and check out weapons/armor.
Frankie - actually does nothing. Gives you 2 different keys to locked doors here in Coalition Bunker. Asks to bring these keys back
Hospital Terminal - shows some information and also shows top scorers
Bulletin Board - shows official posts.
To find specific person easily - press TAB. This will display players / items
names.
Coalition Patrol quest:
You can complete this quest any number of times. Just go to the Radford’s south-eastern entrance and patrol for some time. Usually, every 5-10 minutes mutons launch an attack on the city.
The best way to survive is to stay close to marine patrol. Do not engage into close combat - mutons are much tougher. Stay away from Muton Avengers, hunt Muton Scouts and Harrasers.
When you are killed, you often get injured. Check Character screen for details on Injuries, their effect and duration.
Use “R” button to rest if wounded. You can also go visit Corporal Edison and ask him to heal you.
Good luck getting in there !
Screenshots:
http://technopolies.net/gallery/original/shot139-team.jpg
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.sun.javaws.Launcher.executeApplication(Unknown Source)
at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.UnsatisfiedLinkError: no lwjgl in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at org.lwjgl.Sys$1.run(Sys.java:67)
at java.security.AccessController.doPrivileged(Native Method)
at org.lwjgl.Sys.<clinit>(Sys.java:65)
at org.lwjgl.openal.AL.<clinit>(AL.java:57)
at fC.c(Unknown Source)
at techno.client.world3d.Client3D.main(Unknown Source)
... 9 more
On Win XP with Java 6 b73
Worked fine for me. Graphics are nice and interface is straightforward. Frame rate was 270FPS. However, I found the game speed too slow. It takes forever to walk somewhere. Also when I bring up the character or inventory screen, I cannot make them go away.
Here are my specs:
AMD Athlon 64 3000+
512MB RAM
Asus Radeon 9600PRO
Not sure if you can make sense of this, but I started around 30 fps, then went to about 45 fps, then went indoors, went to about 75 fps, went back outdoors, was at about 100 fps, walked north to some tents, 150 fps, then over on blank terrain I get 220 fps. Much much higher than before though.
Anywho I like the new interface modifications, especially the item icon-on-click in the inventory thing. Shop interface is kinda cool too, but you need a confirmation dialog or some mouse icon indicating you’re purchasing something; I accidentally bought 2 guns at first thinking I had to select the gun and click “buy”. Oh and you need to specify what ammo is for what. Some people don’t know what exact milimeter ammunition is necessary for various lethal weapons.
Also, to the above poster, how on earth do you get 270 fps on a 9600 pro? My above framerates, although not bad, were on a 6600 gt, which I’m fairly sure is a higher end card. Perhaps it’s just one of those weird java things. ¬¬
Thanks for your responses folks.
-
Regarding JWS problem on 6.0 - i’ve updated JNLP (thanks for the tip, EgonOlsen). Should work fine with mustang now.
-
Regarding “Unable to close Inventory” problem - hit ESCAPE to close popup windows. I think i will need to add a “X” button to them too, if hitting ESC is not friendly.
So far (using Java5 now… ), i’ve noticed two problems. I’m not sure if they relate to a laggy server or something else: When you move, it happens quite often (so often, that it’s annoying) that you seem to run into an invisible rubber wall which throws you back. It not just pushes you back quite a distance but it also turns you around, so no constant movement in one direction is possible. The second problem is, that it sometimes takes ages to load the coalition bunker interiors and the gui elements like the shop screen. And even if the shop screen is visible, buying takes ages. I was klicking like mad on the green trousers to buy some but nothing happens. After half a minute, the commands executed and i ended up with an inventory full of trousers… At least this gets better when disabling the “fast network” option.
-
movement commands start executing on client without getting acknowledgement from server that the command actually started. e.g. when you click on some place on the map, the player starts moving at once. If the server is too laggy, it receives this command and sends acknowledgement too late, and causes player to “roll-back” his position. I’ve updated the jar that should fix this problem on even laggy server.
-
As to “shop” problem - i think i’ll do it in a NWN way - you will receive confirmation message every time you buy / sell something. You will still be able to omit confirmation if holding CTRL. I think i’ll add this feature some later.
The most obvious problem now is laggy server. It just makes the game unplayable. I would be very grateful if someone here could offer a shelter for the game server for a while, until i find better channel.
Game server has been relocated to better channel.
Work very well, especially with “Fast Network” option enabled. Give it a try.
I gave it a try, the game starts and reports:
“Server not yet available”
Then plots an undefined sequence of green dots
Java Web Start version
Stand-alone client (Win32, ~4.5M)
Map/NPC editor
New features:
- graphics improvements
- NPC scripting engine
- new monsters
- new structures & plants
- new weapons & armor
- new tutorial scenario
- minor features and bugfixes
http://technopolies.net/gallery/original/shot150-forest.jpg
For what it’s worth, the WebStart failed on my Linux box with this error message:
java.lang.IllegalStateException: Display must be created before you can create Keyboard
at org.lwjgl.input.Keyboard.create(Keyboard.java:286)
at t1.at.a(Unknown Source)
at t1.dj.a(Unknown Source)
at t1.dj.<init>(Unknown Source)
at techno.client.world3d.Client3D.startVisual(Unknown Source)
at techno.client.world3d.Client3D.main(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.sun.javaws.Launcher.executeApplication(Launcher.java:1154)
at com.sun.javaws.Launcher.executeMainClass(Launcher.java:1101)
at com.sun.javaws.Launcher.continueLaunch(Launcher.java:944)
at com.sun.javaws.Launcher.handleApplicationDesc(Launcher.java:515)
at com.sun.javaws.Launcher.handleLaunchFile(Launcher.java:218)
at com.sun.javaws.Launcher.run(Launcher.java:165)
at java.lang.Thread.run(Thread.java:595)
That’s running Java 1.5.0_06 on Mandriva 2006.
Also, I don’t think you need to set java.library.path in the jnlp file. For JOGL at least, I adapted the example from cokeandcode (http://www.cokeandcode.com/info/webstart-howto.html) and that worked fine for my silly test case (http://www.cs.bsu.edu/~pvg/games/test/game.jnlp).
Ok, new version works just fine for me (Windows XP)…
but it takes a rediculously long time to load up the game. I think I fell asleep briefly while waiting for it. It was 2-4 minutes easily. I haven’t tried running the game a second time (this is using webstart, waiting for that red bar to fill up while it takes over the whole screen), but does it always take that long or is this some sort of unusual case?
Anywho, actually playing in the game seemed pretty good, looks like you’re making some progress. I had to quit so I didn’t get a very complete impression, so I won’t comment in detail right now.
Two things stood out that seemed like they could use improvement:
- Melee combat seemed very slow and/or as if you missed the majority of the time. It breaks the action. Could you make it a bit faster? (btw, if you’re lucky, you can gain health while being attacked by resting in the middle of the fight)
- Dieing… can be a bit frustrating. I died next to a couple of trilobyte things that definately ran faster than me. Every time I resurrected they came right back and killed me again. Would it be possible to let the person resurrect a short distance away, or at least choose when they want to get up so the thing doesn’t immediately home back in on them (wait 15 seconds for a dialog box “awake” to appear)?
Note: Just tried WebStart with Windows 98 and received above keyboard error. Downloading and running the exe does not start the program either.
For what it’s worth, the WebStart failed on my Linux box with this error message:
java.lang.IllegalStateException: Display must be created before you can create Keyboard at org.lwjgl.input.Keyboard.create(Keyboard.java:286) at t1.at.a(Unknown Source) at t1.dj.a(Unknown Source) at t1.dj.<init>(Unknown Source) at techno.client.world3d.Client3D.startVisual(Unknown Source) at techno.client.world3d.Client3D.main(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at com.sun.javaws.Launcher.executeApplication(Launcher.java:1154) at com.sun.javaws.Launcher.executeMainClass(Launcher.java:1101) at com.sun.javaws.Launcher.continueLaunch(Launcher.java:944) at com.sun.javaws.Launcher.handleApplicationDesc(Launcher.java:515) at com.sun.javaws.Launcher.handleLaunchFile(Launcher.java:218) at com.sun.javaws.Launcher.run(Launcher.java:165) at java.lang.Thread.run(Thread.java:595)
That’s running Java 1.5.0_06 on Mandriva 2006.
Arrrgh… uploaded the latest version, try now please
but it takes a rediculously long time to load up the game. I think I fell asleep briefly while waiting for it. It was 2-4 minutes easily. I haven’t tried running the game a second time (this is using webstart, waiting for that red bar to fill up while it takes over the whole screen), but does it always take that long or is this some sort of unusual case?
I’ve found a bug in webstart version, something like Thread.sleep(20000) … which was there for debug purposes. Removed and uploaded the updated jar.
Also, you need to wait for textures to be generated (for about a minute) when running the game for the first time. Consequent lauches
do not generate anything and should take significantly less time.
Two things stood out that seemed like they could use improvement:
- Melee combat seemed very slow and/or as if you missed the majority of the time. It breaks the action. Could you make it a bit faster? (btw, if you’re lucky, you can gain health while being attacked by resting in the middle of the fight)
The hit/miss ratio depends on your ATK / your enemies DEF points. Learning weapon skills should help to hit enemies more often.
It was planned that after finishing the 4 starter quests in the first village you should get enough XP to progress to Level 3 in any of weapon skills.
I’ve added a poll regarding combats system to the game’s front page. Any suggestions, please welcome.
- Dieing… can be a bit frustrating. I died next to a couple of trilobyte things that definately ran faster than me. Every time I resurrected they came right back and killed me again. Would it be possible to let the person resurrect a short distance away, or at least choose when they want to get up so the thing doesn’t immediately home back in on them (wait 15 seconds for a dialog box “awake” to appear)?
Agreed. Will it be better if after the death you will lose some XP and respawn at the starting point ?
Note: Just tried WebStart with Windows 98 and received above keyboard error. Downloading and running the exe does not start the program either.
I’ve uploaded the fixed jar. Please try now
got this error when launching:
java.lang.IllegalStateException: Display must be created before you can create Keyboard
at org.lwjgl.input.Keyboard.create(Keyboard.java:286)
at t1.ar.a(Unknown Source)
at t1.di.a(Unknown Source)
at t1.di.(Unknown Source)
at techno.client.world3d.Client3D.startVisual(Unknown Source)
at techno.client.world3d.Client3D.main(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.sun.javaws.Launcher.executeApplication(Unknown Source)
at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
at com.sun.javaws.Launcher.continueLaunch(Unknown Source)
at com.sun.javaws.Launcher.handleApplicationDesc(Unknown Source)
at com.sun.javaws.Launcher.handleLaunchFile(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
EDIT: im on win2000
About the Display-before-Keyboard-stuff mentioned in the JGF: I assume this is caused by the Display not initialized because of the lack of matching video modes. I had a look in the properties file and you are setting the bpp to 32. This is fine on Windows, but on Linux, you don’t get 32bpp reported by the driver but 24bpp. Maybe that’s the problem?
screen depth could be adjusted in /home/.technopolies/techno.properties
g666, could you try setting screen depth to 16 ?
screen.depth=16
[snip]
Arrrgh… uploaded the latest version, try now please
The errror persists.
got this error while launching:
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.sun.javaws.Launcher.executeApplication(Launcher.java:1154)
at com.sun.javaws.Launcher.executeMainClass(Launcher.java:1101)
at com.sun.javaws.Launcher.continueLaunch(Launcher.java:944)
at com.sun.javaws.Launcher.handleApplicationDesc(Launcher.java:515)
at com.sun.javaws.Launcher.handleLaunchFile(Launcher.java:218)
at com.sun.javaws.Launcher.run(Launcher.java:165)
at java.lang.Thread.run(Thread.java:613)
Caused by: java.lang.NoClassDefFoundError
at org.lwjgl.opengl.Display.(Display.java:104)
at com.threed.jpct.GLHelper.init(Unknown Source)
at com.threed.jpct.GLRenderer.init(Unknown Source)
at com.threed.jpct.FrameBuffer.enableRenderer(Unknown Source)
at com.threed.jpct.FrameBuffer.enableRenderer(Unknown Source)
at com.threed.jpct.FrameBuffer.enableRenderer(Unknown Source)
at t1.di.a(Unknown Source)
at t1.di.(Unknown Source)
at techno.client.world3d.Client3D.startVisual(Unknown Source)
at techno.client.world3d.Client3D.main(Unknown Source)
… 11 more
Adjusting the color depth to 16 in the properties helped to get it running on my Linux machine. I got a not so pretty 16 bit mode then, but at least it worked. I had some problems with the progress bar not refreshing while texture creation, but after that, it worked just fine (Suse 10.1, Celeron 1Ghz, GF3Ti500, Java1.5).