Java-Gaming.org Hi !
Featured games (85)
games approved by the League of Dukes
Games in Showcase (612)
Games in Android Showcase (172)
games submitted by our members
Games in WIP (658)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
   Home   Help   Search   Login   Register   
  Show Posts
Pages: [1] 2 3 ... 5
1  Game Development / Artificial Intelligence / Re: Decision Making in Strategy Game on: 2015-07-22 05:21:50
You're on the right track.   The individual game has to provide some basic
interface methods, such as "copy the board" and "make a random move",
while every thing else is done by a generic framework, which is instructed
to start with the current situation and spend N seconds finding the best
move to make.
2  Game Development / Artificial Intelligence / Re: Decision Making in Strategy Game on: 2015-07-16 19:30:24
The basic idea is to play many games using random moves, all the way to the end.  If you win the random game, give positive reinforcement to the root move of the tree.  If you lose the random game, give negative reinforcement.   There are many variations and different formalisms based on this idea.

AFAIK this was first used successfully in world class Backgammon programs, but it reached critical mass as the basic technique in Go playing programs.  

The amazing thing is that it doesn't require any strategy or knowledge of the game, other than recognizing the winner.  Of course, adding some knowledge can help too.  For example, I recently made a MCTS robot play several variations of checkers, and with absolutely no tuning it beats me flat using 10 seconds per move.
3  Game Development / Artificial Intelligence / Re: Decision Making in Strategy Game on: 2015-07-10 17:13:03
I've done AIs for over 60 strategy games, ranging from simple movement games to complex
euros.  These days, I always start with MCTS.   Depending on the game, it works anywhere
from poorly to magically well - but it is trivial to implement for any particular game (once you
have a generic MCTS framework) and the work to create a basic MCTS bot for a particular game
is necessary for other methods, so no effort is wasted.


4  Game Development / Newbie & Debugging Questions / Re: Self-cert Java Applet Issues on: 2015-06-10 05:20:52
Self certs are no longer acceptable as applets or jws applications.  You have to
pay for a real certificate.   As security this is complete BS, but that's the way it is.
5  Java Game APIs & Engines / Android / Re: From Java to Android, challenges on: 2015-05-27 18:53:36
I'm thinking of porting legacy java too. 

One major advantage I have, I think, is that 95% of my graphics is done using only a canvas, no swing or awt widgets.  If I use only a canvas, then doesn't that eliminate using XML for layout?

Big open question, networking.  Can I use raw sockets?
6  Discussions / Miscellaneous Topics / Re: screen scraping as a hacking method? on: 2015-05-02 20:41:49
Scar is the kind of thing I suspect is in use, but something much more than just scriptable is needed.
I know there are other windows programs, ostensibly  intended for testing GUIs, that will remember
and playback sequences of mouse actions.
7  Discussions / Miscellaneous Topics / screen scraping as a hacking method? on: 2015-04-30 21:50:46
I'm engaged in a low stakes hacking war with an unknown party who is messing with one of my java web start applications. The available evidence suggests that the most likely way this hack works is by interpreting the pictures on the screen, and feeding in mouse clicks. This can't be a simple replay attack - some pretty sophisticated image processing must be involved, and the interpreter has to be coupled with a custom back-end robot. All in all, an improbably sophisticated package for this hack, which is definitely "just for fun" not profit or malice.

My question is what toolkits might be the basis for such a system?
8  Discussions / Miscellaneous Topics / Re: Crash - Corrupt File, Months of Work Lost on: 2015-03-20 06:37:12
The correct answer starts like this: "six months ago, establish a reliable backup procedure..."
9  Game Development / Game Play & Game Design / Re: Getting Adjacent Tiles on: 2015-03-11 06:48:06
My games all give each cell on the board an array of links to adjacent cells; and all routine navigation from cell to cell uses it instead of the coordinate system.  This has lots of advantages.  It's efficient to use.  All the standard overall geometries are obviously handled, but so are oddly shaped boards with cells missing, boards closed into a torus, boards with arbitrary networks of cells and so on.
10  Game Development / Newbie & Debugging Questions / Re: What should i use to develop multiplayer game online in browser ? on: 2015-02-28 21:04:00
You have to jump through the right hoops to get a java version working.   To work for ordinary
users without disabling all security, the applet has to be signed by a real certificate, and if it
uses sockets it has to use the "all permissions" setting instead of sandbox.
11  Game Development / Game Play & Game Design / Re: The impossible 15-Puzzle on: 2015-02-11 07:35:21
Don't quote me, but I recall that for the classic 15 puzzle, exactly half of
all positions are impossible, and that a simple counting algorithm can be used
to determine which half any position is in.
12  Game Development / Newbie & Debugging Questions / Re: Java game : is it possible that update is called before re-paint is completed ? on: 2014-12-20 18:10:05

It's insanely difficult to get the synchronization right if you have 2 or more
threads marching through the same data structures, some making changes,
some trying to generate a new display.

A better strategy is to centralize drawing and mutating in one thread.
Other threads that feed in  events of various types, such as network activity,
mouse activity, and display update requests, should only queue these events
to have their effects one at a time.

13  Game Development / Newbie & Debugging Questions / Re: Starting a Java Game, Where to Start? Eventually want to be network multiplayer on: 2014-12-14 07:53:33
It all depends on what you value most: the result and a community of players, or the learning experience across the whole process.   It is appealing to start by mining your own sand, but not if you actually expect to love the first few castles you build.

You won't find a lot of formal teaching materials, but there are a bunch of open source frameworks you can either use or just study.
14  Game Development / Networking & Multiplayer / Re: [Solved] Three Solutions to UDP's Critical Packet Loss on: 2014-11-18 17:14:34
Unneeded "features" of TCP shouldn't be a consideration, they cost you nothing.
15  Game Development / Networking & Multiplayer / Re: Three Solutions to UDP's Critical Packet Loss on: 2014-11-17 20:46:24
Switching to TCP ought to be simple, and it solves your problem definitively.

The other solutions put a band-aid on UDP, but only probabilistically, and at the same time introduce
other problems.   A retransmitted UDP packed is out of order, and adding consideration of the state
of communications to higher levels of the program complicates things greatly.

If you think about it, the main reason not to switch is the less-predictable latentcy; and recovery
of critical packets adds this same unpredictability.

BTW, solution #6 would be to redesign your game to not have critical packets.
16  Game Development / Networking & Multiplayer / Re: java.net.SocketTimeoutException: connect timed out on: 2014-11-11 18:52:44
It sounds like the actual problem is that the process providing the data is blocked.
A common error is assuming that sending a small amount of data will always
succeed quickly, when in fact it can block. 

Outside of the actual data transfer, other kinds of synchronization issues
among threads can stop progress; "socket timed out" is only a symptom.
17  Game Development / Game Mechanics / Re: Packing data on: 2014-11-08 07:27:01
ignore this until your game is complete, and you metering shows that the bandwidth consumed is a major factor.
18  Game Development / Newbie & Debugging Questions / Re: I'm desperate on: 2014-10-09 05:30:03
Learn by volunteering for some existing project, where you can absorb the gestalt
while doing something useful.
19  Discussions / Miscellaneous Topics / Re: Looking for a good host on: 2014-10-05 19:33:22
Good hosting sites have a significant decay rate, but as of today I'm completely satisfied
with the service I get from Steadfast.net
20  Discussions / General Discussions / Re: Are Java applets really "dead" for indie developers? on: 2014-09-23 23:27:44
The barriers are higher for both the user and developer, but applets are still viable.
With the legacy of 10+ years of coding, I'm not about to switch Boardspace.net
to another technology. 

The net of all the brouhaha is, if you want to use applets or java web start, you have to buy a certificate.
If you use sockets, you also have to switch from "applet permissions" to "all permissions", effectively making
your applets as powerful as applications.  Oracle and the browser developers have made the applet warnings
so scary, switching to "all permissions" is barely noticable.

Or you can just deploy as a java application.

If you don't have a pile of existing java code to live with, the choice of java vs ... html5, flash, ios, android
is still a conundrum - there are good and bad points and no clear winner.
21  Discussions / General Discussions / Re: Are Java applets really "dead" for indie developers? on: 2014-09-23 23:14:21
But basically, a few years ago people realized that applets contained security problems that would allow bad guys to run arbitrary Java code on your computer without your knowledge. This is very bad and actually cost me a reformatting.

The sad part about this is that the primary work-around is to convert applets to applications, which run
the same "arbitrary java code".

  "Can't trust applets? Just run the untrusted code directly!"

IMO it's more about Oracle covering its corporate ass than any concern for user's safety.
22  Game Development / Networking & Multiplayer / Re: Java 8 sockets on: 2014-04-29 19:10:32
I have a fairly definitive answer on this.  Buried in the "enhancements" section of the java 8 documentation.
http://docs.oracle.com/javase/8/docs/technotes/guides/jweb/enhancements-8.html

      "For sandbox RIAs, SocketPermissions for the origin host is no longer granted. Calls from JavaScript code to the
      RIA are not granted SocketPermissions beginning with JDK 8."

I Leave it to the reader to decide in what universe this is an enhancement.

So it appears that Oracle has decreed that sandboxed applets can't use sockets; they have to become all-permissions
applets, which have unrestricted access to the client's machine.  It mystifies me how requiring users to trust applets with
unrestricted access will enhance security.
23  Game Development / Networking & Multiplayer / Re: Java 8 sockets on: 2014-04-26 17:46:23
People still use applets? And Web start?

End users need not know your using java. Otherwise your doing it wrong. My 2c anyway.

It's true that Oracle seems to be trying to kill it by the death of 1000 cuts.  Meantime, the news is that the java plugin
that uses java 8 has appeared, so applets as well as web start are now broken.
24  Game Development / Networking & Multiplayer / Java 8 sockets on: 2014-04-25 18:27:23
Heads up for all sites which use java and sockets - java 8 seems to have broken
using sockets in sandboxed applets.  This is currently seen in java web start,
but presumably will migrate to ordinary applets when the java plug-in is upgraded
to java 8.

The complaint is java.security.AccessControlException

this is a new complaint in java 8 - your current working site will break.
25  Game Development / Newbie & Debugging Questions / Re: How would I make some .jars optional? on: 2014-01-18 19:38:33
The trick is to call on the optional Jar only through interfaces. 
Make the optional jar implement the "extraStuff" interface.
Load the jars using Class.forName("..");
26  Discussions / General Discussions / Re: Doomsday for unsigned and self-signed applets on: 2014-01-16 22:08:40
As for signing co-ops, the problem is that one bad apple will spoil the certificate for everyone.

That's why you have to choose your co-ops carefully, like when you "choose" your next girlfriend or boyfriend  Tongue

(Off-topic but...)  Based on the observed churn-to-burn rate, it had better be more selective than that!
27  Discussions / General Discussions / Re: Doomsday for unsigned and self-signed applets on: 2014-01-16 20:53:09
I don't think Oracle is getting any money from the certificates, it's more of a CYA move.
But it is damn inconvenient.

As for signing co-ops, the problem is that one bad apple will spoil the certificate for everyone.
28  Discussions / General Discussions / Doomsday for unsigned and self-signed applets on: 2014-01-16 19:23:36
Java 7 update 51 brings us doomsday for unsigned and self-signed applets. 
It's been on the horizon for 6 months or so, but it's here.

The cheapest route I found to buy a trusted certificate is from Tucows,
https://author.tucows.com/.  Don't mess around trying to create a company name,
just get a personal certificate.

If you don't have the time or inclination to wade through the signing morass, please
remove your java applets.  It will look bad for you and for java if a lot of java applets
seem to be nonfunctional.
29  Game Development / Performance Tuning / Re: Fastest way to determine if two rotated rectangles intersect? on: 2012-09-01 20:47:04
There is no single, fastest way until you nail down what else you know about the rectangles.   For example, if the rectangles are likely to be far apart, then the fastest way might be to check mins and maxes of the coordinates, and then do more detailed checks only if they might still intersect.  If they're not likely to be far apart, then the quick test would be a quick waste of time.
30  Game Development / Networking & Multiplayer / Re: Network Infrastructure on: 2012-08-07 20:09:03
Adding networked play as an afterthought is likely to be very difficult, but if you start with networking in mind, and adhere to the necessary discipline rigorously, then networking can be a painless add-on once the networking itself is reliable.

A few things
(1) Maintain a rigorous separation between events which are strictly local and events which everyone needs to know about.  Tracking the mouse or changing a view is a local event.  Moving an object is a public event.
(2) All public events have to go through a serialization knothole and will encounter random network delays.  Do this even when developing, and not really using a network.  From the viewpoint of the app, there is no difference between networked and non-networked play; the app is not aware of the network at all, all it knows is it has a sequence of events to process.

The two big confounding factors are
(1) you have to update local views immediately, even though the network delay hasn't happened yet.
(2) unless all actions are strictly synchronous, players WILL see different sequences of events and disagree about reality.  Chess is easy because it's always someone's turn.  Shooters are hard because you don't wait your turn to shoot someone.
Pages: [1] 2 3 ... 5
 
afikri (8 views)
2015-08-31 09:30:22

afikri (15 views)
2015-08-31 09:30:07

afikri (7 views)
2015-08-31 09:27:24

afikri (10 views)
2015-08-31 09:26:40

Roquen (16 views)
2015-08-29 11:30:54

GamerC4 (26 views)
2015-08-22 20:38:50

GamerC4 (24 views)
2015-08-22 20:37:18

GamerC4 (28 views)
2015-08-22 20:37:01

Kefwar (33 views)
2015-08-22 18:07:24

GamerC4 (26 views)
2015-08-22 01:00:24
HotSpot Options
by Roquen
2015-08-29 11:33:11

Rendering resources
by Roquen
2015-08-17 12:42:29

Rendering resources
by Roquen
2015-08-17 09:36:56

Rendering resources
by Roquen
2015-08-13 07:40:51

Networking Resources
by Roquen
2015-08-13 07:40:43

List of Learning Resources
by gouessej
2015-07-09 11:29:36

How Do I Expand My Game?
by bashfrog
2015-06-14 11:34:43

List of Learning Resources
by PocketCrafter7
2015-05-31 05:37:30
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!