Author Topic: What are you working on? :D  (Read 261044 times)

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #400 on: August 03, 2011, 06:17:57 AM »
Trying to learn Unity :)

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #401 on: August 03, 2011, 09:29:57 AM »
Just completed SpaceChem.  :>

It took me all evening to complete the last level.  Once I had my solution, it took me about 50 attempts to actually kill the enemy ship, heh.

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #402 on: August 03, 2011, 09:32:44 AM »
Does anyone know how an asteroid is reachable? Is it only reachable if the SendDistance of the sending 'roid hits the center of the recieving, or does it only have to touch the edge

Asteroid A can reach Asteroid B if Asteroid A's Send Distance is greater than the distance from the center of asteroid A to center of asteroid B minus Asteroid B's radius.

In other words, it's the distance from the center of the sending asteroid, to the edge of the destination asteroid.

Quote
Also, we need less stickies.

Yes.

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #403 on: August 03, 2011, 09:38:53 AM »
Nice! I guess the game is pretty good then, still haven't tried it :S

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #404 on: August 03, 2011, 09:42:09 AM »
You should check out the demo at least... :>  It's really worth your time man.  I think you would be good at it as well, you have the right sort of mind for it.. :>

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #405 on: August 03, 2011, 09:44:30 AM »
Heh :P

I'm currently working on "The game" *insert trollface* "Bounce", which has already taken shape, the last things to add is small bonuses and downsides(temp effects)

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #406 on: August 03, 2011, 09:57:40 AM »
What is the Opposite of Bonus Called?

Alex

  • Administrator
  • Ent
  • *****
  • Thank You
  • -Given: 3
  • -Receive: 14
  • Posts: 1,035
Re: What are you working on? :D
« Reply #407 on: August 03, 2011, 11:01:29 PM »
Just completed SpaceChem.  :>

I have been playing that recently. It is an amazing game!

Bonobo

  • Achiever
  • Old Oak
  • ****
  • Thank You
  • -Given: 139
  • -Receive: 12
  • Posts: 670
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #408 on: August 04, 2011, 02:37:45 AM »
What is the Opposite of Bonus Called?
Malus

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #409 on: August 04, 2011, 02:50:53 AM »
Trying to learn Unity :)

Try http://www.unity3dstudent.com . It's really good, though he does use UnityScript, not C#. It would be fairly easy to convert, and it doesn't matter which you use anyway - it all gets converted to a standardised language at compile anyway.

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #410 on: August 04, 2011, 05:31:05 AM »
I will be away until Sunday evening.  Access to the forums will be sporadic at best and I probably won't post much since I'll be reading the forums on my phone.

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #411 on: August 04, 2011, 05:38:08 AM »
Goin' to Abu Dhabi, are ye?

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #412 on: August 04, 2011, 05:54:23 AM »
Good luck on the trip to where ever you are going :)



I'll try myself on Voxel Rendering, it's pretty awesome :)

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #413 on: August 04, 2011, 08:00:26 AM »
Goin' to Abu Dhabi, are ye?
Not this time.. This (long) weekend I shall be attending a wedding at a mansion in the cottswolds that used to belong to riddley scott. It will be quite insane.

I am far from home!

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #414 on: August 04, 2011, 08:07:30 AM »
A wedding? GL :)

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #415 on: August 05, 2011, 02:52:49 AM »
Do any of the currently released Lua AIs use anything that is not known or could not be known by a human playing the game normally? AI-specific variables don't count here, such as IAI's metrics.

EDIT: Also, do they know which AI an opponent is using?
« Last Edit: August 05, 2011, 02:56:40 AM by Pilchard123 »

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #416 on: August 05, 2011, 03:15:44 AM »
What do you mean?

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #417 on: August 05, 2011, 03:28:36 AM »
I mean - do the IAI, AAI or MAI use data that could not be learned by a human playing the game? The human would not be using the console, devmode, or other 'non-game' tools.

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #418 on: August 05, 2011, 03:32:11 AM »
As far as I know, they don't. They use everything a< huamn can, but not more :P

Bonobo

  • Achiever
  • Old Oak
  • ****
  • Thank You
  • -Given: 139
  • -Receive: 12
  • Posts: 670
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #419 on: August 05, 2011, 05:15:17 AM »
What about asteroids … was it not so that some AIs don’t have to explore b/c they already “know” about them?

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #420 on: August 05, 2011, 05:41:30 AM »
Infected AI knows about the asteroids properties and stuff before it has explored it, but Alien/Merchant follows the game rules :)

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #421 on: August 06, 2011, 01:09:52 AM »
IAI is only "aware" of asteroids that are within send distance of the asteroids IAI owns. So it can't see anything that happens at the back of your empire, for example.

It seems like people would prefer that the standard be that AIs follow the same rules as players must follow with regard to intelligence gathering/scouting so I will aim to make IAI comply with those rules for version 3.

The place I am in is totally crazy. Hard to explain but I shall produce pics upon my return :>

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #422 on: August 06, 2011, 02:04:04 AM »
So IAI can only see what is happening on their own asteroids? Not on any "invisble" ones?

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #423 on: August 06, 2011, 02:08:59 AM »
No.. On it's own asteroids AND neighbouring asteroids

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #424 on: August 06, 2011, 02:48:39 AM »
So, what you mean is taht it sees every asteroid on the map? Only that they see it via neighbours, but in theory they then see the whole map :P

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #425 on: August 06, 2011, 03:18:40 AM »
I don't mind AIs being able to do things people can't, it's one of the advantages they have to counter not being human. I was just wondering if there was anything that was avoided for the sake of fairness in an AI.

Aino - Yes, the IAI could see every asteroid on a map, but only if it can reach them. Asteroids that it can't reach are invisible to it. Also, why Merchant? Alien and Infected I understand, but Merchant seems like a...merchant, really.
« Last Edit: August 06, 2011, 03:32:28 AM by Pilchard123 »

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #426 on: August 06, 2011, 03:53:52 AM »
Waht u meen? The name?

Well, I was empty of ideas, the AI is brutal and the name popped into my head all the time D:

Lost Seedling

  • Shrub
  • ***
  • Thank You
  • -Given: 9
  • -Receive: 30
  • Posts: 205
Re: What are you working on? :D
« Reply #427 on: August 06, 2011, 11:11:28 AM »
Wait a minute. The goal of the AI creator in a game against a human opponent should be to maximize the enjoyment of the player in the game experience, not demonstrate their coding prowess in creating an unbeatable opponent. Anyone who has played a FPS knows how frustrating it is having computer opponents with inhuman aim or super-hearing. It detracts from the game experience. The best AI give the player a challenge without being overwhelming. That's why they come with settings- so you can adjust the AI suitable to your skill level.

Now if the goal is to demonstrate an AI that can beat a human, such as Deep Blue or Watson, then you want to make the AI as smart as possible by any means. A brute-strength opponent such as Deep Blue had the advantage of never getting tired, plus the programmers were able to study Kasparov's past tactics, whereas Kasparov had no such ability to study Deep Blue. It may have "followed the rules", but it was not a fair match, even though it demonstrated the advances in computer speeds. In the case of Watson, the challenge to the programmers covered a much wider array of obstacles. Nevertheless, they still had to accommodate the human players- for instance- Watson could theoretically buzz in much quicker electronically, so they had to make an artificial delay in his response time.

In the case of Annikk's Infected, it has the advantage of being able to move seedlings much quicker than a human can maneuver the mouse and click. However, it is still possible to beat it under certain conditions because it can not yet make judgements on asteroid attributes nor make strategic decisions map-wide like a human can on "organic" layouts, for example.

To imply that Infected or any other AI is "cheating" or is "unfair" would be missing the point of the whole idea. The goal is to make a computer opponent which can best deliver an enjoyable gaming experience, regardless of how it does so. If, by using techniques or information beyond the players ability to overcome, it cannot be beat, then it serves no purpose other than as a mechanical exercise. Of course, in the event such an AI is developed, the map creator can always make adjustments in the starting conditions to balance out any advantage held by the AI.

Personally, I find it extremely entertaining and interesting to watch AI operate in any environment, whether it is a DARPA competition or Eufloria. I would love to see a contest between Infected, Merchant, and any other AI competing on a series of maps with different attributes, and then crowning a winner until the next, better, AI comes along. If the contestants would like me to, I'd be glad to do so, document the results, and post the results in it's own thread. What about it? We could have a "map of the week" series of matchups.

I haven't heard anyone say Infected is "unfair", but if they do they really need to examine the whole purpose behind it's existence!!!

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #428 on: August 06, 2011, 08:49:27 PM »
For me, IAI is supposed to be as deadly as is possible by any means, even if the actions it takes could not be performed so quickly by a human. In that sense it's a mechanical exercise more than an attempt to create a fun-and-fallible opponent. Making ai less difficult in a convincing way is a totally different (and often much harder) task.

I don't believe we are anywhere close to a "perfect" ai yet. The basics are down but there are still a lot of things such as prioritising high-stat asteroids and strategically useful asteroids which I haven't even attempted yet. There is still a lot of work to do in that regard.

I recently made a level that sees aino's latest ai battling against IAI, but the map was heavily balanced in favour of whoever starts in the south.
It would be useful to have a stockpile of good testing maps, both organic and non-organic, to test new ai changes on. That would allow AI programmers to test whether their changes are effective more easily.  Making a balanced organic map is actually quite hard so in the one I made, I had the ai starting positions swap at random on level load. So half the time iai starts in the north, and the other half of the time it starts in the south. That let's you figure out more easily if one of the starting positions offers an advantage over the other.

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #429 on: August 06, 2011, 08:52:29 PM »
Also, I have heard lots of people say IAI is unfair! Heh

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #430 on: August 06, 2011, 09:24:30 PM »
I am actually trying to produce a method of determining strategically important asteroids atm, based on stats, how many other aseroids it can reach, and how many it can be reached by. Stats are fairly self-explanatory, but the send/recieve thing is related to its defensibility and use in offence. If it can send to lots of asteroids, it can attack lots of asteroids and be evacuated easily. It it can't be reached easily, defense can be managed easier, but can't be reinforced well.

Lost Seedling

  • Shrub
  • ***
  • Thank You
  • -Given: 9
  • -Receive: 30
  • Posts: 205
Re: What are you working on? :D
« Reply #431 on: August 06, 2011, 10:09:57 PM »
Right! Infected has to be as aggressive as possible owing to the current advantages enjoyed by the human player's superior spacial recognition and analytical  abilities on organically layed-out maps. On an evenly populated grid map, however, AI's ability to expand more rapidly owing to the time-advantage in not having to point and click would be extremely difficult to overcome. It becomes a simple mathematical equation.

Pilchard's observation on strategically-placed and statistically important asteroids is dramatically illustrated in Annikk's AI war map. You can watch how certain dead-ends and choke points become critical game-changers. Once control is firmly established there, the enemy is finished. This is obvious to any war-fighter, or game-player from Chess to Go to I guess even Monopoly, but it will be a challenge to design an AI that can duplicate this logic.

While watching AI wars, I also began wondering about the value of determining an asteroid's connectibility in designing a smarter AI. Much like Google's initial revolutionary algorithm (at the time) in determining a site's search relevancy based on the number of links pointing to it, the attractiveness of owning an asteroid by the AI might be determined in part by the same idea. It's an interesting problem, because there are so many variables involved it can't be easily defined. As you say, Pilchard, only those asteroids that can send easily but not be reached easily would be the best candidates. Once you can gain control of a corner of the asteroid field or a chain of asteroids, you can minimize your vulnerability and use all your resources to supply the front. I'll be anxious to see what you come up with!

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #432 on: August 07, 2011, 02:51:16 AM »
Right, so far the (as yet unnamed) AI is planned to do the following:


  • Run multiple, definable empires.
  • Learn about the map as a human would, exploring asteroids as and when there is a chance to.
  • Behave depending on the conditions of its empire and other empires, rather than ignore global conditions.
  • Prioritise important asteroids, not just those easy to conquer. Of course, easy pickings will be taken.
  • Not lag.

Whether any of those will work remains to be seen.

EDIT: Are tables/matrices very inefficient?
« Last Edit: August 07, 2011, 03:06:32 AM by Pilchard123 »

Sniped50

  • Sapling
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 97
Re: What are you working on? :D
« Reply #433 on: August 07, 2011, 04:32:33 AM »
@Pilchard

I'd have said it depends on the data you're inputing. If you have a lot of stuff that needs storing, or the axes of the table are dependent on map conditions (for instance, individual rows are seperate asteroid ID numbers), then most likely yes. What I DO know is that if you have a matrix in which most of the slots are going to be left blank, then it becomes very inefficient.

I'm not annikk though. And I've been known to get things wrong before...  :(

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #434 on: August 07, 2011, 04:42:01 AM »
According to the Lua reference, sparse tables are quite good, though it only mentions memory efficiency, so I don't know about read speed.
http://www.lua.org/pil/11.2.html

And they are all roidID indexed, though most should only change value every now and then.

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #435 on: August 07, 2011, 06:05:18 AM »
The number one thing that causes a lot of lag is loops within loops.
Eg:
For each asteroid
Compare to all other asteroids


Loops within loops are somewhat inevitable though, unless you build an ai that precalculates all the relationships during levelsetup and stores the data in a series of matrices.. But that is not a trivial thing to do, and means the ai can't cope with moving asteroids.

The number one challenge in building a deadly ai is identifying generalised circumstances with generalised responses.  Once you know what the ai ought to do in a given circumstance, you can build your rules so it responds appropriately to that situation.

For example, imagine the ai starts with a single asteroid, with 2/4 trees, 50 seedlings, and two nearby asteroids - one with good stats and 3 neighbouring unknown asteroids, the other with average stats and 2 neighbouring asteroids.
What is the optimal opening actions for the ai to take?

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #436 on: August 07, 2011, 07:22:09 AM »
I have made that pre defined loop thing, and it's much more efficient with resources than my previous one, but you should do a variable "IsMoving" or something, true/false if the asteroid ont he map moves, if so: use the check while playing and if not use the pre defined matrices :)

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #437 on: August 07, 2011, 04:05:12 PM »
Did anyone work out how to get hold of the game's reachability data? it would be really useful, though I can work without it.

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #438 on: August 07, 2011, 08:43:44 PM »
I think you'll need to work without it :/

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #439 on: August 07, 2011, 09:37:47 PM »
Personally I've always just calculated it myself based on asteroid positions, radiuses and send distances.

I'm enjoying our discussions on ai a great deal. :>

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #440 on: August 07, 2011, 10:10:19 PM »
I think I'll improve my AI to depend on alot of stuff to do actions, but first I'm going for a vacation tommorow(7 days) and I wanna re-learn all the java things, as last time(when I didn't know anything about coding), it looked like some alien text to me xD

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #441 on: August 08, 2011, 06:34:41 AM »
I arrived home this evening and watched a documentary about maths.  I had some inspiration of how I might be able to create complex landscapes using the 3D engine I've been working on, potentially providing a rich environment to explore.

Sniped50

  • Sapling
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 97
Re: What are you working on? :D
« Reply #442 on: August 08, 2011, 06:42:24 AM »
Really? Do tell us more, annikk! I'd love to see that.

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #443 on: August 08, 2011, 08:22:49 AM »
Well the basic idea is that if I build a simple landscape out of, say, 100 triangles... and then perform a series of recurring rules on the triangles, EG, split into 3 more triangles per triangle, and move the centrepoint up or down perpendicular to the face by a random amount, it morphs into a crazy landscape.
I need to actually finish the engine first though, I am still wrestling with the concept of pseudo-vertices for now.

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #444 on: August 08, 2011, 05:00:50 PM »
Sounds a bit like a deformed version of the Koch snowflake, or possibly Serpienski's triangle

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #445 on: August 08, 2011, 07:48:25 PM »
Yup what I have described is basically a fractal algorithm.

AWS

  • Achiever
  • Arboreal Being
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 2
  • Posts: 275
Re: What are you working on? :D
« Reply #446 on: August 11, 2011, 01:18:32 AM »
well/... aside from fractal vertices and pythagoras... i have a new little level for people to test if theyre feeling keen?! ;D ;D ;D

its not difficult by any means. in fact, i kinda like it because its a return to how it 'used to be' when i first discovered the game. not difficult, but not super easy. the emphasis being on the exploration and expansion as much as on fighting and winning.
having said that, its a short level so i hope others who dont want a 3hr slog can hop in and enjoy with ease.

anyone???
\aws

Lost Seedling

  • Shrub
  • ***
  • Thank You
  • -Given: 9
  • -Receive: 30
  • Posts: 205
Re: What are you working on? :D
« Reply #447 on: August 11, 2011, 02:42:27 AM »
I'll test it, of course!

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #448 on: August 15, 2011, 10:01:09 PM »
Aino, have you any way of testing the speed that your AIs run? I've had an idea for speeding them up...

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #449 on: August 15, 2011, 10:04:33 PM »
Mine is very fast :)

60*Number of iterations per second, the amount of iterations is default 10, but mine survives 50 without lag :P
This is mainly because of the pre-set neighbours :P

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #450 on: August 15, 2011, 10:37:56 PM »
I know what I wanna do!

Make two "circles" then make them scan if the touch eachother, I'll add a lua file soon to show what I mean :)

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #451 on: August 16, 2011, 02:44:31 AM »
If the distance between their centres (pythagoras) is greater than the sum of their radiuses (just add them), they are not touching.  :>

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #452 on: August 16, 2011, 03:21:09 AM »
No, thats not what I've been making, I made a "planet"(to explain it simply) with one orbiting "asteroid", when two planets asteroids collide, they'll merge into one, and then, when they shouln't be colliding(the orbits aren't colliding) they separate. If you still don't understand, I'll show in the upcoming file :)

Though, I'm watching 2 1/2 men, so it'll take a little while :P

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #453 on: August 16, 2011, 06:21:40 AM »
I just realised why my AI was exploring so well after only one time writing the explore code...

NONE OF MY CODE WAS RUNNING! IT WAS ALL THE BASIC AI!

...

...

...

...

...

I may be scavenging other AI codes.

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #454 on: August 16, 2011, 06:33:06 AM »
Need help? Ask if you want :)

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #455 on: August 16, 2011, 04:01:58 PM »
Bummer dude.  Need to set the grace timer to 99999 for all asteroids or something.  :>  Otherwise it's impossible to see if your AI is doing anything.


My overall advice for writing an AI is to make sure you have a good concept, preferably written down/in diagram form, of how the AI will make decisions on what to do.  It's not an easy thing to write, but hugely satisfying when you finally see it working.  :>

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #456 on: August 16, 2011, 05:26:08 PM »
Is there any way of turning of AI for less than all of the empires?

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #457 on: August 16, 2011, 05:33:42 PM »
In pseudo code:


Code: [Select]
-- empires 0 through 5 have default AI turned off

While Gamerunning do


for i = 0, number of asteroids do

-- AI is on by default
GetAsteroid(i).GraceTimer = 0

for j = 0, 5
if GetAsteroid(i).owner = j then
-- Asteroid belongs to a non-default-AI empire, so turn the default AI off
GetAsteroid(i).GraceTimer = 99999
end
end
end
coroutine.yield()
end

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #458 on: August 18, 2011, 01:38:44 AM »
Is there any way of getting the number of asteroids in a map programmatically? My usual approach (infinite for loop) seems not to work...

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #459 on: August 18, 2011, 01:41:55 AM »
Do the for loop, then check is the GetAsteroid(id) ISN'T nil and then add one the the amount, if it is nil, do a break.

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #460 on: August 18, 2011, 01:42:46 AM »
That's what I usually do. Isn't working today.

EDIT: THis code should give a value to highroidID of 9. Instead it gives -1. If you change thae starting point of the for loop, it gives start-1.

Code: [Select]
function LevelSetup()
Globals.G.Asteroids = 10

for i = 0, math.huge do
    if GetAsteroid(i) == nil then
      highroidID = i - 1
  break
    end
  coroutine.yield()
  end
end

function LevelLogic()
MessageBox(highroidID)
end

Orion63

  • Sapling
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 73
Re: What are you working on? :D
« Reply #461 on: August 18, 2011, 01:47:49 AM »
Not tested:

Code: [Select]
numberOfRoids = 0
for empireID = 0, GetNumFactions() do

    numberOfRoids = numberOfRoids + GetEmpire(empireID):GetNumOwnedAsteroids()

end

That should work. But I am still kind of a newb in lua, so test it first.
« Last Edit: August 18, 2011, 01:51:25 AM by Orion63 »

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #462 on: August 18, 2011, 01:48:42 AM »
Try set highroid to -1 before the loop then make it add one to itself each time a roid is spotted :)

See if it works atleast, worth a shot :)

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #463 on: August 18, 2011, 01:50:14 AM »
Not tested:

Code: [Select]
numberOfRoids = 0
for empireID = 0, GetNumFactions() do

numberOfRoids = numberOfRoids + GetEmpire(empireID):GetNumOwnedAsteroids()

end

That should work. But I am still kind of a newb in lua, so test it first.

Won't work, didn't even test to see the result!

This is because it's so visible in the math of computers :)
Pre set the variable to -1 not 0, cause if it's 0 you count human wise: -1 it's computer wise(computers love starting at 0 :))

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #464 on: August 18, 2011, 01:52:38 AM »
Try set highroid to -1 before the loop then make it add one to itself each time a roid is spotted :)

See if it works atleast, worth a shot :)

Tried that, no luck. I even tried setting it to some massive arbitrary number, to see if that worked. Also no, if you were wondering.

[...]
Won't work, didn't even test to see the result!

This is because it's so visible in the math of computers :)
Pre set the variable to -1 not 0, cause if it's 0 you count human wise: -1 it's computer wise(computers love starting at 0 :))

Also, it won't work, but for a different reason. That code requires that every empire is checked, regardless of its existence. When a non-existend empire is searched, it returns nil and so tries to call a method on a nil value.
« Last Edit: August 18, 2011, 01:58:35 AM by Pilchard123 »

Orion63

  • Sapling
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 73
Re: What are you working on? :D
« Reply #465 on: August 18, 2011, 01:56:43 AM »
...
...

It wouldn't make sense starting at -1, since it's a simple counter. Add 1 when you find a asteroid, that's it.

Also the 0 starting thing, does not even apply to Lua.
While it supports it 0-starting arrays, Lua's idiom is to start at index 1. Unlike the bazilion programming languages that actually start at 0(Due to C influence).
Either way, it does not change the fact that it has nothing to do with it.

If the code doesn't work(Highly likely), it's not that.

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #466 on: August 18, 2011, 01:59:41 AM »
Then add an "or 0" the the end... Easy way to handle nil's :)

Edit: Uhhm, it's "or numberOfRoids" not 0, cause 0 will make the variable 0!

Edit 2: doing edits rapidly here, but: This should be added to one of the tutorials, it'll make life easy for some programmers atleast :)

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #467 on: August 18, 2011, 02:02:28 AM »
W/ever, I'll do it the old-fashioned way, by hand.

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #468 on: August 18, 2011, 02:04:18 AM »
W/ever, I'll do it the old-fashioned way, by hand.



Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #469 on: August 18, 2011, 02:07:05 AM »
...
...

It wouldn't make sense starting at -1, since it's a simple counter. Add 1 when you find a asteroid, that's it.

Also the 0 starting thing, does not even apply to Lua.
While it supports it 0-starting arrays, Lua's idiom is to start at index 1. Unlike the bazilion programming languages that actually start at 0(Due to C influence).
Either way, it does not change the fact that it has nothing to do with it.

If the code doesn't work(Highly likely), it's not that.

Heh, but the Asteroid ID's in the game starts at 0, and you don't wanna miss any of them? And it'll run a nil roid at the end, so it would be catastrophic!

Ask any programmer, things in the PC world starts with 0 usually, but Lua's arrays are intended to start at 1 so humans can easily pick it up I guess :)

Orion63

  • Sapling
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 73
Re: What are you working on? :D
« Reply #470 on: August 18, 2011, 02:07:32 AM »
Code: [Select]
function GetAsteroidNumber()
numberOfRoids = 0
for empireID = 0, GetNumFactions() - 1 do

     numberOfRoids = numberOfRoids + GetEmpire(empireID):GetNumOwnedAsteroids()

    end

    return numberOfRoids

end

This work. Tested on two built in maps.
Have fun, kids ;)

Nice meme, Aino ^^

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #471 on: August 18, 2011, 02:09:04 AM »
U tried running a code on the value? I think it will cause a crash o.O

kmercy

  • Seedling
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 34
Re: What are you working on? :D
« Reply #472 on: August 18, 2011, 02:09:59 AM »
Code: [Select]
function Num()
asteroidnum = 0

for d = 0, 100 do
if GetAsteroid(d) ~= nil then
if GetAsteroid(d).radius > 5 then
asteroidnum = asteroidnum + 1
end
end
end
Pause()
MessageBox(asteroidnum)
WaitDialog()
Unpause()
end

Simple

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #473 on: August 18, 2011, 02:13:11 AM »
FUN FACT: I'm an IDIOT!

All/Most of the codes posted work fine. However, if you put them in LevelSetup, they don't take into account any asteroids added randomly, since these are added AFTER LevelSetup. Can you guess where I was counting the asteroids?  :-[

Sorry for wasting everyone's time.

kmercy

  • Seedling
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 34
Re: What are you working on? :D
« Reply #474 on: August 18, 2011, 02:14:38 AM »
FUN FACT: I'm an IDIOT!

All/Most of the codes posted work fine. However, if you put them in LevelSetup, they don't take into account any asteroids added randomly, since these are added AFTER LevelSetup. Can you guess where I was counting the asteroids?  :-[

Sorry for wasting everyone's time.

Another fun fact thats why its a function so use it where you want :)

Orion63

  • Sapling
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 73
Re: What are you working on? :D
« Reply #475 on: August 18, 2011, 02:14:47 AM »
...
...
...

Heh, but the Asteroid ID's in the game starts at 0, and you don't wanna miss any of them? And it'll run a nil roid at the end, so it would be catastrophic!

Ask any programmer, things in the PC world starts with 0 usually, but Lua's arrays are intended to start at 1 so humans can easily pick it up I guess :)

Not the problem, because it's not what I am doing in the code.
In the code, I am looping through all empires(which start by zero), and using the GetNumOwnedAsteroids built-in, which returns the number of asteroids.

i.e.
Empire 0 has 2 roids / Empire 1 has 7 roids / Empire 2 has 6 roids

GetNumFactions will return 3, so I need to loop between 0 and the last empire(which is GetNumFactions() - 1, because indeed it starts at zero)

Code: [Select]
numberOfRoids = numberOfRoids + GetEmpire(empireID):GetNumOwnedAsteroids()This on the first run will return 2
On the second it will return 2 + 7 = 9
On the third run it will run 9 + 6 = 15

And in the end returns the last result, which is 15.(What I am not entirely sure, is if empty asteroids have a empire assigned to them. If not, this won't work...)

kmercy

  • Seedling
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 34
Re: What are you working on? :D
« Reply #476 on: August 18, 2011, 02:16:52 AM »
Quote
Not the problem, because it's not what I am doing in the code.
In the code, I am looping through all empires(which start by zero), and using the GetNumOwnedAsteroids built-in, which returns the number of asteroids.

i.e.
Empire 0 has 2 roids / Empire 1 has 7 roids / Empire 2 has 6 roids

GetNumFactions will return 3, so I need to loop between 0 and the last empire(which is GetNumFactions() - 1, because indeed it starts at zero)

Code:
numberOfRoids = numberOfRoids + GetEmpire(empireID):GetNumOwnedAsteroids()
This on the first run will return 2
On the second it will return 2 + 7 = 9
On the third run it will run 9 + 6 = 15

And in the end returns the last result, which is 15.(What I am not entirely sure, is if empty asteroids have a empire assigned to them. If not, this won't work...)

Thats why you just use what i posted

Orion63

  • Sapling
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 73
Re: What are you working on? :D
« Reply #477 on: August 18, 2011, 02:20:44 AM »
Quote
Not the problem, because it's not what I am doing in the code.
In the code, I am looping through all empires(which start by zero), and using the GetNumOwnedAsteroids built-in, which returns the number of asteroids.

i.e.
Empire 0 has 2 roids / Empire 1 has 7 roids / Empire 2 has 6 roids

GetNumFactions will return 3, so I need to loop between 0 and the last empire(which is GetNumFactions() - 1, because indeed it starts at zero)

Code:
numberOfRoids = numberOfRoids + GetEmpire(empireID):GetNumOwnedAsteroids()
This on the first run will return 2
On the second it will return 2 + 7 = 9
On the third run it will run 9 + 6 = 15

And in the end returns the last result, which is 15.(What I am not entirely sure, is if empty asteroids have a empire assigned to them. If not, this won't work...)

Thats why you just use what i posted

Yap, yours will run even if empty asteroids are not assigned to empires ;)

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #478 on: August 18, 2011, 02:22:19 AM »
Empty asteroids belong to Empire 0, the greys.

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #479 on: August 18, 2011, 02:26:49 AM »
I guess I was wrong :)

Orion63

  • Sapling
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 73
Re: What are you working on? :D
« Reply #480 on: August 18, 2011, 02:44:12 AM »
Empty asteroids belong to Empire 0, the greys.

Thank you, for the info ;)

Don't worry Aino. The reason why we, programmers and designers, gather in communities, is to improve ourselves ;)

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #481 on: August 23, 2011, 01:02:18 AM »
Since everybody decided to be silent, I'll break it and ask:

What are you working on? :D

Bonobo

  • Achiever
  • Old Oak
  • ****
  • Thank You
  • -Given: 139
  • -Receive: 12
  • Posts: 670
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #482 on: August 23, 2011, 09:28:40 AM »
Real Life

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #483 on: August 23, 2011, 01:36:48 PM »
I'm kinda busy there myself, school and all, but noone posts in some periods and it's kinda... boring :P

Bonobo

  • Achiever
  • Old Oak
  • ****
  • Thank You
  • -Given: 139
  • -Receive: 12
  • Posts: 670
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #484 on: August 23, 2011, 04:24:35 PM »
One wisdom my late father taught me: Never admit that you’re bored—bored people usually are boring ;)

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #485 on: August 23, 2011, 07:27:45 PM »
But I'm not boring :D

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #486 on: August 23, 2011, 10:54:16 PM »
What is cot,sec and csc? They are short versions for Trigonometric functions, on the wiki site they are just a wide wall of calculations which to a normal human like me(I'm young though...) can't understand...

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #487 on: August 24, 2011, 01:05:33 AM »
sec(x) = secant(x) = 1/cos(x)

cosec(x) = cosecant(x) = 1/sin(x)

cot(x) = cotangent(x) = 1/tan(x)

They are the reciprocal functions of the three basic trig functions - ie cot(x) X tan(x) = 1

Why d'you ask?

Also, regarding DrawRegPoly, I remembered yesterday (well, I knew I had it, but not how long I'd left it) that I had over half of that summer assignment to write. I'll prolly be on much less for a while, while I write boring Java exercises.

Code: [Select]
public int tediousExercise(){
Scanner scan = new Scanner(System.in);

try{
int i = scan.nextInt();
scan = null;
return  i;//evidence-required obvious comment
} catch (NoSuchElementException e){
System.out.println("Invalid");//evidence-required obvious comment
scan = null;
return tediousExercise();
}
}//zzzz

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #488 on: August 24, 2011, 01:37:16 AM »
You know, you can't learn too much :)

But what are the uses of them them?

Edit: Nice code, understood everything in it :D
Sad thing there is no such big thing as Try/Catch in Lua, ofcourse you have if value ~= nil, but with try/catch yuo can find an error running inside an entire code :P
« Last Edit: August 24, 2011, 01:44:50 AM by Aino »

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #489 on: August 24, 2011, 02:22:36 AM »
You can always use print() to debug. In Eufloria, this is output to the dev console.

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #490 on: August 24, 2011, 02:24:21 AM »
Yes, thats true... :)

But I wonder how to do a A* search algorithm... Any ideas? I'm jsut curious :)

Pilchard123

  • Tester
  • Old Oak
  • ****
  • Thank You
  • -Given: 4
  • -Receive: 24
  • Posts: 932
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #491 on: August 24, 2011, 02:34:11 AM »
A* search? No idea. You may want to look at the Lua function assert() , which is a bit like try-catch.

Edit: Wikipedia has some good psedocode that you could probably use to start, at least.
« Last Edit: August 24, 2011, 02:38:59 AM by Pilchard123 »

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #492 on: August 24, 2011, 02:41:30 AM »
Ugh, I hate encoding codes, but I'd better get to doing it if I wanna learn this :/

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #493 on: August 24, 2011, 02:47:48 AM »
Mehh, I'll do my own :D

Seeing the behaviour of the a* I can do my own one, hopelyfully very resourceefficient too :D

Orion63

  • Sapling
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 73
Re: What are you working on? :D
« Reply #494 on: August 24, 2011, 05:03:50 AM »
I am curious, in what you way will you implement A* in Eufloria?
Anyway, if you're planning to implement it to move seedlings from planet to planet without the default algorithm, I suggest the Dijkstra's Algorithm. Even if it is a bit performance heavy(normal eufloria game, doesn't contain enough planets to such delay be noticeable, anyway), it does provide the optimal path and while A* can give pretty good results, you have to have a good heuristic function(and trust me, it will give you a bad headache, if it complicates just a little).
Also if you already started to program the A* algorithm, the Dijkstra's Algorithm is the same as A* when the heuristic function always evaluates to 0.
Good luck ;)

What am I working on?
When I get the courage to awake the beast(microsoft), I was thinking about making some random map, or something, just to test some things, I've been wondering. Either way, the sky has cleared out, so the next days, I might work on my tan instead :-P.

PS: Aino, school already? You guys start really early there...I still have 3 weeks(Jesus Christ, the time is running out :'( ).

Edit: If I had to guess, how does Eufloria handle seedling's paths, I would say, that whenever a planet is created(normally in LevelSetup) a path is calculated by Dijkstra's(It seems to be always the shortest distance...), and stored into a hash table(Lua -> table).
ie:

Code: [Select]
{2 : 1, 3, 2} //To go to planet whose ID is 2, go to 1, 3 and finally 2...
This would avoid repetitive calculations, and since the original campaign is mostly statics(Asteroids are not randomly created/killed, nor move), all is calculated in LevelSetup...happy ending
Of course...This is just a wild guess. A* algorithm is probable as well, specialty since whenever Eufloria gives me the LowMemory error, is on LevelSetup(A* while faster, is more memory expensive).
Cheers.
« Last Edit: August 24, 2011, 05:22:56 AM by Orion63 »

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #495 on: August 24, 2011, 05:21:11 AM »
I'm just doing it for my own learning, as I'm wanting a future as a game programmer/desifgner I'll have to know such basic things like an a* search algorithm :)

But everythiong is just falling apart, I have a problem with the neighbouring system, something which pains me. But now off to bed, theres a new day tommorow :)

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What are you working on? :D
« Reply #496 on: August 24, 2011, 08:18:49 AM »
I just bought Ableton Live and am installing it.

Then I will process some sounds with my Culture Vulture Stereo Analog Distortion Unit for my friend James.  :>

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #497 on: August 25, 2011, 04:39:27 AM »
Hmm, I wonder how you are supposed to convert screen into level, or calculating where everything is supposed to stay at that camrazoom and that cameraX/Y. I do not directly talk about Eufloria, but any overhead games(games where you look down at the world)...

It's very hard to explain, so let's imagine Minecraft, with topview. How do you know where every single block is placed on the screen? It's an easy deal with the level, but converting that into the screen it might get harder...

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #498 on: August 26, 2011, 12:44:26 AM »
Ok, my game is soon finished, some extra polishing and it's good to go :D

It might not be what you expect, it's a simple Eufloria game, with more futuristic look and not so dynamic/natural...

Aino

  • Ent
  • ******
  • Thank You
  • -Given: 4
  • -Receive: 30
  • Posts: 1,527
  • Eufloria: Yes
Re: What are you working on? :D
« Reply #499 on: August 26, 2011, 04:58:25 AM »
Final thing to add: Saving!

I'll do the saving complex, I don't know why, but I'll just do it complex...