Author Topic: Repair Importance  (Read 7814 times)

Offline Eddy-B

  • Moderator
  • Hero Member
  • *****
  • Posts: 1186
    • http://www.eddy-b.com
Repair Importance
« on: August 30, 2005, 12:12:32 PM »
POLL:

Please order this list for buildings to repair; the most important one first:[ol type=\'1\'][li]CommandCenter[/li][li]StructureFactory[/li][li]CommonOreSmelter[/li][li]CommonOreMine[/li][li]Tokamak/MHDGenerator/SolarPowerArray[/li][li]BasicLab[/li][li]StandardLab[/li][li]AdvancedLab[/li][li]University[/li][li]Nursery[/li][li]Agridome[/li][li]VehicleFactory[/li][li]ArachnidFactory[/li][li]Residence[/li][li]RareOreSmelter[/li][li]RareOreMine[/li][li]RobotCommand[/li][li]CommonStorage[/li][li]RareStorage[/li][li]MedicalCenter[/li][li]MeteorDefense[/li][li]Observatory[/li][li]DIRT[/li][li]Garage[/li][li]Forum/RecreationFacility/ConsumerFactory[/li][li]Spaceport[/li][li]GORF[/li][/ol]This is a temparary list that i quickly made up just now. I'll insert the final list into my repairing ConVec AI-code. GPs are not on the list, because the code can choose NOT to repair GPs (coz of explosion danger, taking any unit next to it with it), but you could add them as well, if you like.

How to edit: quote me, and rearrange the list. Just leave the
  • directives in front of the lines, the forum will put the numbers in front of them.
« Last Edit: August 30, 2005, 12:13:37 PM by Eddy-B »
Rule #1:  Eddy is always right
Rule #2: If you think he's wrong, see rule #1
--------------------

Outpost : Renegades - Eddy-B.com - Electronics Pit[/siz

Offline zigzagjoe

  • Hero Member
  • *****
  • Posts: 626
Repair Importance
« Reply #1 on: August 30, 2005, 04:49:12 PM »
Quote
[ol type=\'1\']
[/li][li]CommandCenter
[/li][li]StructureFactory
[/li][li]Agridome
[/li][li]Tokamak/MHDGenerator/SolarPowerArray
[/li][li]CommonOreSmelter
[/li][li]Nursery
[/li][li]University
[/li][li]StandardLab
[/li][li]CommonOreMine
[/li][li]AdvancedLab
[/li][li]VehicleFactory
[/li][li]CommonStorage
[/li][li]RareOreSmelter
[/li][li]RareStorage
[/li][li]Residence
[/li][li]RareOreMine
[/li][li]RobotCommand
[/li][li]MedicalCenter
[/li][li]MeteorDefense
[/li][li]Observatory
[/li][li]DIRT
[/li][li]Garage
[/li][li]Spaceport
[/li][li]ArachnidFactory
[/li][li]Forum/RecreationFacility/ConsumerFactory
[/li][li]GORF
[/li][li]BasicLab
[/li][/ol]
idk y u would rly list basic lab at all, lol
« Last Edit: August 30, 2005, 04:49:39 PM by zigzagjoe »

Offline Mez

  • Hero Member
  • *****
  • Posts: 648
Repair Importance
« Reply #2 on: August 30, 2005, 05:06:43 PM »
1. CommandCenter
   2. StructureFactory
   3. CommonOreSmelter
   4. CommonOreMine
   5. AdvancedLab (due to its explosive properties, could do more damage whilst damaged)
   6. Tokamak/MHDGenerator/SolarPowerArray (only emp damaged not physical like adv lab)
   7. StandardLab
   8. Agridome (food more important then morale, food = life)
   9. MedicalCenter (workers required to live as long as possible)
  10. RareOreSmelter (usually only have 1)
  11. University (uni = nursey of equal importance, but more ppl would die in a uni)
  12. Nursery
  13. RareOreMine
  14. VehicleFactory
  15.  Observatory (needed for the defence to work)
  16. MeteorDefense
  17. BasicLab
  18. GORF (saves ore)
  19. ArachnidFactory (most people dont use very well)
  20. Spaceport (not essential for the colony to survive, but is more important than morale improvements etc)
  21.  RobotCommand
  22. Garage
  23. Residence (all depends on other factors, and the existing morale, and if the building is disabled by damage or not)
  24.  DIRT
  25. Forum/RecreationFacility/ConsumerFactory
  26. RareStorage (storage is non essential, but if no smelters exist they should go up to place 3 and 4, for obvious reasons)
  27. CommonStorage

All buildings below place 3, if disabled due to damage should go up to place 3 as saving them saves lots of time and ore!

Offline Eddy-B

  • Moderator
  • Hero Member
  • *****
  • Posts: 1186
    • http://www.eddy-b.com
Repair Importance
« Reply #3 on: August 31, 2005, 04:55:48 AM »
Quote
idk y u would rly list basic lab at all, lol
as i said, its a quick copy (and some re-arrange) from the sdk header, i took out GPs and lights, trade centers. Basic lab only exists, if the other 2 labs aren't available yet.

Thanx joe and mezza for those lists. The more lists i get, the more accurate my AI will mimmic human behaviour, altho the disabled/damage-amount etc has to also account for importance.

Keep it coming guys!
Rule #1:  Eddy is always right
Rule #2: If you think he's wrong, see rule #1
--------------------

Outpost : Renegades - Eddy-B.com - Electronics Pit[/siz

Offline Shuffles

  • Jr. Member
  • **
  • Posts: 53
Repair Importance
« Reply #4 on: September 07, 2005, 01:08:26 PM »
1. CommandCenter
2. StructureFactory
3. CommonOreSmelter
4. Advanced Lab
5. Tokamak/MHDGenerator/SolarPowerArray
6. VehicleFactory
7. Agridome
8. CommonOreMine
9. RareOreSmelter
10. RareOreMine
11. University
12. Nursery
13. StandardLab
*Guard Posts
14. CommonStorage
15. MeteorDefense
16. Observatory
17. Spaceport
18. Garage
19. DIRT
20. BasicLab
21. RobotCommand
22. ArachnidFactory
23. Residence
24. GORF
25. MedicalCenter
26. RareStorage
27. Forum/RecreationFacility/ConsumerFactory

Basically, high priority given to structures needed for basic colony funtions (power, food, ore) Also, low priority given to strutures easily replaced if lost. Strutures that help rebuild/defend the colony given high priority.

Offline TH300

  • Hero Member
  • *****
  • Posts: 1404
    • http://op3game.net
Repair Importance
« Reply #5 on: September 07, 2005, 05:11:17 PM »
a static list isn't the best idea.
make it dynamic so that agridomes don't have high priority unless there's a lack of food, so that it doesn't care too much about toks when there are still enough power houses if one is lost, so that a building isn't repaired when its under heavy attack and going to collapse anyway...

Offline Shuffles

  • Jr. Member
  • **
  • Posts: 53
Repair Importance
« Reply #6 on: September 07, 2005, 05:24:04 PM »
Oh right I forgot to add, make make it so heavily damaged buildings are repaired first, and then less damaged ones.  this way a 4% damaged CC won't take priority over a 98% damaged tokamak.

Offline BlackBox

  • Administrator
  • Hero Member
  • *****
  • Posts: 3093
Repair Importance
« Reply #7 on: September 07, 2005, 08:36:41 PM »
Can't really do a dynamic list with BuildingGroups.

You record buildings in a certain order, and it executes those commands in that order, and none other...
There's really nothing conditional about the order at all. You can't select based on damage, or what's the most 'important' at that point...

At least this is how I get it, if Eddy is using BuildingGroups to do the work.
 
« Last Edit: September 07, 2005, 08:37:29 PM by op2hacker »

Offline Eddy-B

  • Moderator
  • Hero Member
  • *****
  • Posts: 1186
    • http://www.eddy-b.com
Repair Importance
« Reply #8 on: September 08, 2005, 03:09:13 AM »
Quote
Can't really do a dynamic list with BuildingGroups.

You record buildings in a certain order, and it executes those commands in that order, and none other...
There's really nothing conditional about the order at all. You can't select based on damage, or what's the most 'important' at that point...

At least this is how I get it, if Eddy is using BuildingGroups to do the work.
well, im not :D

u can't repair buildings using the buildinggroup.
I browse all buildings, finding one that is damaged, then assign a convec to fix it. At the moment this "browsing" is done using the standard map_id list, i.e. starting with mapCommonOreMine until mapTokamak (making the tokamaks LAST on the priority list). I want to change that list.

I was planning to use a simple array holding the list, but making it dynamic would be great, althou that would make the use of a (static) array difficult, as moving 1 item "up" in the list, would mean moving all the other ones down (one by one). Does MSVC have a dynamic list (like Borland has a TList class) ?  If not i'll write it myself - i've cerated many classes like that before, so that won't be a problem.

But the 'answers' you guys gave me help me in determining a list (a starting list for sure). From there i can take it further.

I also have to update the code to include spiders and repairVehicles if available; it now only finds convecs.


PS: about a dynamic buildingGroup - i HAVE been thinking about creating that (using AIProc or triggers), since that procedure can also use some improvement, is my opinion..
Rule #1:  Eddy is always right
Rule #2: If you think he's wrong, see rule #1
--------------------

Outpost : Renegades - Eddy-B.com - Electronics Pit[/siz

Offline Highlander

  • Hero Member
  • *****
  • Posts: 780
  • Outpost 2 Elder
Repair Importance
« Reply #9 on: September 08, 2005, 03:45:39 AM »
Figure I might do a list for you aswell, though it might be a little late. I'll add some notes at the end for you to have a thought about.


Top Priority:

1. CommandCenter
2. CommonOreMine
3. CommonOreSmelter
4. Tokamak/MHDGenerator/SolarPowerArray
5. Advanced Lab
6. Agridome
7. StructureFactory

High Priority:

8. Nursery
9. University
10. VehicleFactory
11. RareOreMine
12. RareOreSmelter
13. StandardLab


Medium Priority:

14. RobotCommand
15. Residence
16. MedicalCenter
17. Forum/RecreationFacility/ConsumerFactory
*Guard Posts

Low Priority:

18. DIRT
19. GORF
20. Observatory
21. MeteorDefense
22. Spaceport
23. Garage
24. BasicLab
25. ArachnidFactory
26. CommonStorage
27. RareStorage




Explanatory Notes:

Top Priority: Most important structures. Adv Lab is only on this list because of potential Exploding damage.

High Priority: Makes up the rest of the necessary buildings which are needed to make a base survive.

Medium Priority: Mainly Morale Enhancers

Low Priority: Buildings which you don't really need, but they can be useful at times.




Further, I would not repair all buildings more than half way. (Time saving) Exceptions are buildings that might explode.

I also like to play with morale on my side, as I usually find that more rewarding than just rushing for high technologies.




 
 
There can be Only one. Wipe Them out. All of Them.

Old player still playing. Visit Spark for a game of Outpost 2

Offline gamerscd0

  • Jr. Member
  • **
  • Posts: 84
Repair Importance
« Reply #10 on: September 08, 2005, 07:26:22 AM »
the first one should be the most damaged shouldnt it? ;)  

Offline BlackBox

  • Administrator
  • Hero Member
  • *****
  • Posts: 3093
Repair Importance
« Reply #11 on: September 08, 2005, 08:31:41 PM »
MSVC has an STL list. (There are several different types of lists, queues, stacks, etc)

Code: [Select]
#include <list>

use this link: http://www.cppreference.com/cppstl.html

to learn about the STL.
« Last Edit: September 08, 2005, 08:32:17 PM by op2hacker »

Offline Betaray

  • Administrator
  • Hero Member
  • *****
  • Posts: 2897
Repair Importance
« Reply #12 on: September 08, 2005, 09:31:36 PM »
would it be possible to modify this so that vecs will auto repair as well?

like on the garage you would have a call button or somthing, and it would have every dmged vec a certain distance from it dock and repair than leave to let another come in?
I am the nincompoop, I eat atomic bombs for breakfest, fusion bombs for lunch, and anti-matter bombs for dinner

I just hope they don't explode

Offline Eddy-B

  • Moderator
  • Hero Member
  • *****
  • Posts: 1186
    • http://www.eddy-b.com
Repair Importance
« Reply #13 on: September 09, 2005, 02:23:46 AM »
sounds like a good idea. I was already planning to do this for AI purposses, but i don't know if it's possible to add a button to the garage view.
Rule #1:  Eddy is always right
Rule #2: If you think he's wrong, see rule #1
--------------------

Outpost : Renegades - Eddy-B.com - Electronics Pit[/siz

Offline zigzagjoe

  • Hero Member
  • *****
  • Posts: 626
Repair Importance
« Reply #14 on: September 09, 2005, 08:04:45 AM »
i doubt it, that'ld require quite a bit of work on the engine. at best, you could prolly implement it in a dll.....
« Last Edit: September 09, 2005, 08:05:14 AM by zigzagjoe »

Offline Hooman

  • Administrator
  • Hero Member
  • *****
  • Posts: 4954
Repair Importance
« Reply #15 on: September 09, 2005, 03:20:33 PM »
Well, I think I came across some sort of button class that seemed to use all virtual functions. So if you implemented all the virtual functions right, and found out how to actually add one to the list of buttons, it might be possible without any code overwrites. But yeah, it'd probably be specific to a DLL. And probably a lotmore involved than I just made it sound :(

 

Offline Betaray

  • Administrator
  • Hero Member
  • *****
  • Posts: 2897
Repair Importance
« Reply #16 on: September 10, 2005, 01:56:20 PM »
well if you cant have a button, mabe have it so the garage automaticly sends out that command every 5 tm or so, and it would call in any damaged idle vec
I am the nincompoop, I eat atomic bombs for breakfest, fusion bombs for lunch, and anti-matter bombs for dinner

I just hope they don't explode

Offline Eddy-B

  • Moderator
  • Hero Member
  • *****
  • Posts: 1186
    • http://www.eddy-b.com
Repair Importance
« Reply #17 on: October 04, 2005, 01:54:35 PM »
Using the 4 lists you guys gave me, i've added points to every list.
The list is shown below, sorted to the total amount of points, averaged out over all 4 posted lists, this is the resulting preference in repairing. Feedback please !!
  • CommandCenter
  • StructureFactory
  • CommonOreSmelter
  • Tokamak
  • CommonOreMine
  • AdvancedLab
  • Agridome
  • Nursery
  • University
  • VehicleFactory
  • StandardLab
  • RareOreSmelter
  • RareOreMine
  • MedicalCenter
  • MeteorDefense
  • Observatory
  • RobotCommand
  • Residence
  • CommonStorage
  • DIRT
  • Spaceport
  • Garage
  • GORF
  • BasicLab
  • ArachnidFactory
  • RareStorage
  • Forum
Rule #1:  Eddy is always right
Rule #2: If you think he's wrong, see rule #1
--------------------

Outpost : Renegades - Eddy-B.com - Electronics Pit[/siz

Offline leeor_net

  • Administrator
  • Hero Member
  • *****
  • Posts: 2350
  • OPHD Lead Developer
    • LairWorks Entertainment
Repair Importance
« Reply #18 on: October 04, 2005, 08:20:19 PM »
Quote
idk y u would rly list basic lab at all, lol

You know, I've always hated this kind of thing.
 

Offline HaXtOr

  • Sr. Member
  • ****
  • Posts: 423
    • http://www.wtfmoogle.com
Repair Importance
« Reply #19 on: October 04, 2005, 09:32:03 PM »
CommandCenter
Tokamak/MHDGenerator/SolarPowerArray
StructureFactory
CommonOreSmelter
CommonOreMine

MeteorDefense
Observatory

CommonStorage
RareStorage
BasicLab

StandardLab
Stop picking your nose
AdvancedLab
University
Nursery
Agridome
VehicleFactory
ArachnidFactory
Spaceport <- depends if space port is needed

Residence
RareOreSmelter
RareOreMine

MedicalCenter


GORF
DIRT
Garage
RobotCommand<- why?
Forum/RecreationFacility/ConsumerFactory <- lmao why repair them?
 

Offline Eddy-B

  • Moderator
  • Hero Member
  • *****
  • Posts: 1186
    • http://www.eddy-b.com
Repair Importance
« Reply #20 on: October 05, 2005, 01:44:22 PM »
Quote
Quote
idk y u would rly list basic lab at all, lol

You know, I've always hated this kind of thing.
This repair order is for AI, not for human players, if the mission includes a basic lab, it should be fixed when damaged. That's why it should be ON the list. Any building that hasn't been built yet will obviously not require any repairs.

Thanx haxtor for your list, i'll add it to the ones i have and change the order if necessary. :)

btw haxtor: same goes for things like cmd center or space port: if AI doesn't NEED a spaceport, it sure won't be built, and so it will not appear on the repair-list either..
« Last Edit: October 05, 2005, 01:45:31 PM by Eddy-B »
Rule #1:  Eddy is always right
Rule #2: If you think he's wrong, see rule #1
--------------------

Outpost : Renegades - Eddy-B.com - Electronics Pit[/siz

Offline CK9

  • Administrator
  • Hero Member
  • *****
  • Posts: 6226
    • http://www.outpost2.net/~ck9
Repair Importance
« Reply #21 on: October 06, 2005, 12:28:32 PM »
CommandCenter
Tokamak/MHDGenerator/SolarPowerArray
StructureFactory
RareOreSmelter
RareOreMine
CommonOreSmelter
CommonOreMine
Spaceport
AdvancedLab
VehicleFactory
StandardLab
GORF
DIRT
University
Nursery
Agridome
ArachnidFactory
Residence
RobotCommand
CommonStorage
RareStorage
MedicalCenter
MeteorDefense
Observatory
Garage
Forum/RecreationFacility/ConsumerFactory

 
CK9 in outpost
Iamck in runescape (yes, I still play...sometimes...)
srentiln in minecraft (I like legos, and I like computer games...it was only a matter of time...) and youtube...
xdarkinsidex on deviantart

yup, I have too many screen names

Offline Sirbomber

  • Hero Member
  • *****
  • Posts: 3237
Repair Importance
« Reply #22 on: October 06, 2005, 05:34:26 PM »
Quote
  • StructureFactory
  • Tokamak/MHDGenerator/SolarPowerArray
  • CommonOreSmelter
  • RareOreSmelter
  • Spaceport
  • VehicleFactory
  • AdvancedLab
  • Nursery
  • StandardLab
  • University
  • Agridome
  • MedicalCenter
  • CommonOreMine
  • RareOreMine
  • Observatory
  • GORF
  • RobotCommand
  • Garage
  • MeteorDefense
  • Residence
  • DIRT
  • Forum/RecreationFacility/ConsumerFactory
  • CommonStorage
  • RareStorage
  • ArachnidFactory
  • BasicLab
  • CommandCenter (if under attack)
I put the Command Center at the bottom because if it's taking damage, well...  :(  
"As usual, colonist opinion is split between those who think the plague is a good idea, and those who are dying from it." - Outpost Evening Star

Outpost 2 Coding 101 Tutorials

Offline CK9

  • Administrator
  • Hero Member
  • *****
  • Posts: 6226
    • http://www.outpost2.net/~ck9
Repair Importance
« Reply #23 on: October 07, 2005, 01:16:34 AM »
If it's under attack, you should keep the hit points up and get some units together.
CK9 in outpost
Iamck in runescape (yes, I still play...sometimes...)
srentiln in minecraft (I like legos, and I like computer games...it was only a matter of time...) and youtube...
xdarkinsidex on deviantart

yup, I have too many screen names

Offline Sirbomber

  • Hero Member
  • *****
  • Posts: 3237
Repair Importance
« Reply #24 on: October 07, 2005, 05:46:41 PM »
If they could get through your defenses and get at your cc though, the battle's already over. If they cut through your units like something really sharp and on fire, then there isn't much you can do. Especially since they'll just eat anything that tries to repair the cc if they're smart. In other words, if it get scratched up a bit by a disaster, go ahead and fix it up.
What I'm trying to say is, if your cc has taken serious damage anyways, you CAN'T repair it since the game automatically counts that as mission failed. Therefore, the cc isn't even worth repariing snce it never gets a chance TO BE reparied!
"As usual, colonist opinion is split between those who think the plague is a good idea, and those who are dying from it." - Outpost Evening Star

Outpost 2 Coding 101 Tutorials