.com.unity Forums
  The Official e-Store of Shrapnel Games

This Month's Specials

The Star & the Crescent- Save $9.00
winSPWW2- Save $6.00

   







Go Back   .com.unity Forums > Illwinter Game Design > Dominions 3: The Awakening > Scenarios, Maps and Mods

Reply
 
Thread Tools Display Modes
  #1  
Old February 25th, 2009, 01:51 AM

pyg pyg is offline
BANNED USER
 
Join Date: Jan 2009
Location: a small farm
Posts: 340
Thanks: 73
Thanked 103 Times in 42 Posts
pyg is on a distinguished road
Default DomModGen (AnyAny/IndyFunPits)

DomModGen is a short bit of python that simplifies and automates some aspects of Dominions 3 mod creation.

AnyAny was an attempt to create games consisting of multiple instances of a given nation. Unfortunately this is not possible with all nations at this point, but can be done currently with EA Kailasa and LA Ulm. By way of example the following code creates a mod of just three Kailasa players:
Code:
#!/usr/bin/env python
# -*- Mode: Python; tab-width: 4 -*-

from DMG import D3MNation, D3M
from dmg.nations import EA_Kailasa

new_mod = D3M(era = 1, modname = "AnyAny Kailasa")
new_mod.remove_default_nations()
EA_Kailasa.create_nation(new_mod, "My Kailasa", None)
EA_Kailasa.create_nation(new_mod, "No, My Kailasa", None)
EA_Kailasa.create_nation(new_mod, "Going Bananas", None)

print new_mod


IndyFunPits adds semi-random nations composed of independents and magic site recruitables with national *features*. Nations have 2-3 magic paths with recruitable mages and gem income for those paths. Although they are playable nations they are not that fun/powerful and in the included mods they have their flags changed to match the independent flag. They are intended for use in games as strong/interesting independents similar to SemiRand. Included are mods that add ~20 IndyFunPits nations to each of the three eras.

You may use this all freely however you like (public domain). I would appreciate PM bug reports.
Attached Files
File Type: zip dmg.zip (26.4 KB, 168 views)

Last edited by pyg; March 9th, 2009 at 11:50 AM..
Reply With Quote
The Following 3 Users Say Thank You to pyg For This Useful Post:
  #2  
Old February 25th, 2009, 05:13 AM
lch's Avatar

lch lch is offline
General
 
Join Date: Feb 2007
Location: R'lyeh
Posts: 3,861
Thanks: 144
Thanked 403 Times in 176 Posts
lch is on a distinguished road
Default Re: Custom nations

Quote:
national_features = ["Calvary",
Calvary is a synonym for Golgatha, or something. I assume you meant Cavalry.
Very nice start.
__________________
Come to the Dom3 Wiki and help us to build the biggest Dominions-centered knowledge base on the net.
Visit my personal user page there, too!
Pretender file password recovery
Emergency comic relief
Reply With Quote
  #3  
Old February 25th, 2009, 10:10 AM

pyg pyg is offline
BANNED USER
 
Join Date: Jan 2009
Location: a small farm
Posts: 340
Thanks: 73
Thanked 103 Times in 42 Posts
pyg is on a distinguished road
Default Re: Custom nations

Quote:
Originally Posted by lch View Post
Quote:
national_features = ["Calvary",
Calvary is a synonym for Golgatha, or something. I assume you meant Cavalry.
Very nice start.
Ack! Well maybe they are just a doomed nation with heavy horsemen

Fixed.
Reply With Quote
  #4  
Old February 25th, 2009, 12:20 PM
Gandalf Parker's Avatar

Gandalf Parker Gandalf Parker is offline
Shrapnel Fanatic
 
Join Date: Oct 2003
Location: Vacaville, CA, USA
Posts: 13,736
Thanks: 341
Thanked 479 Times in 326 Posts
Gandalf Parker is on a distinguished road
Default Re: Custom nations

Nice.
I had a couple of half-done projects along the same line to add as another game-type on the server.

Perhaps I will use this one instead. To create a randomly generated AI opponent for online games.
Reply With Quote
  #5  
Old February 25th, 2009, 12:28 PM

pyg pyg is offline
BANNED USER
 
Join Date: Jan 2009
Location: a small farm
Posts: 340
Thanks: 73
Thanked 103 Times in 42 Posts
pyg is on a distinguished road
Default Re: Custom nations

Quote:
Originally Posted by Gandalf Parker View Post
Nice.
I had a couple of half-done projects along the same line to add as another game-type on the server.

Perhaps I will use this one instead. To create a randomly generated AI opponent for online games.
It would actually be a small change to set the flag the same as the independents and as AIs they would look/feel a lot like really strong independent nations. This will actually be an upcoming example for SP use where you pick an original nation to play and it sets all the rest (AIs) to IndyPundits with the independent flag. Actually SP use was the primary reason the IndyPundits mod happened.
Reply With Quote
  #6  
Old March 6th, 2009, 01:16 AM

pyg pyg is offline
BANNED USER
 
Join Date: Jan 2009
Location: a small farm
Posts: 340
Thanks: 73
Thanked 103 Times in 42 Posts
pyg is on a distinguished road
Default Re: DomModGen (AnyAny/IndyFunPits)

I've been adding features to dmg so that now it can, with minimal hints, add arbitrary .dm files. To test it I've generated a very large mod set in the Late Era with all the original nations plus Rohan, Trolls, Carthacia, Seraphim, Haida Gwaii, The Hoburg Alliance, Urdheim, Machaka Spider Cult, Padmassa, Sar Elad, Skavenblight, plus just for fun CBM 1.41 and CPCS .04. It comes with all the necessary .tga files (repackaged) as well.

I'm sure there are some conflicts/bugs somewhere but I haven't discovered them yet. This is for demo/testing purposes.

Code:
#!/usr/bin/env python                                                                                                       
# -*- Mode: Python; tab-width: 4 -*-                                                                                        

from DMG import D3M

mod = D3M(era=3, modname="DMG MegaMod")
mod.add_all_nations()
dm = open("CBcomplete_1.41.dm", "rb").read()
mod.add_dm(dm, False)
dm = open("CPCS.dm", "rb").read()
mod.add_dm(dm)
dm = open("rohan.dm", "rb").read()
mod.add_dm(dm)
dm = open("troll_kingdom.dm", "rb").read()
mod.add_dm(dm)
dm = open("CarthaciaE.dm", "rb").read()
mod.add_dm(dm)
dm = open("Crusade.dm", "rb").read()
mod.add_dm(dm)
dm = open("haida.dm", "rb").read()
mod.add_dm(dm)
dm = open("Hoburg_D3SE.dm", "rb").read()
mod.add_dm(dm)
dm = open("kobold.dm", "rb").read()
mod.add_dm(dm)
dm = open("machakaspidercult.dm", "rb").read()
mod.add_dm(dm)
dm = open("padmassa_ea.dm", "rb").read()
mod.add_dm(dm)
dm = open("sarelad.dm", "rb").read()
mod.add_dm(dm)
dm = open("Warhammer Skaven.dm", "rb").read()
mod.add_dm(dm)                                                        

print mod
Attached Files
File Type: zip dmg_mega.zip (1.14 MB, 173 views)

Last edited by pyg; March 6th, 2009 at 01:28 AM..
Reply With Quote
The Following 2 Users Say Thank You to pyg For This Useful Post:
  #7  
Old March 6th, 2009, 05:38 AM

Sombre Sombre is offline
BANNED USER
 
Join Date: Feb 2007
Posts: 5,463
Thanks: 165
Thanked 324 Times in 190 Posts
Sombre is on a distinguished road
Default Re: Custom nations

Quote:
Originally Posted by pyg View Post
This will actually be an upcoming example for SP use where you pick an original nation to play and it sets all the rest (AIs) to IndyPundits with the independent flag.
Why? I don't get it. What's the benefit of the AIs in SP all having the same (indy) flag? The game still plays the same.
Reply With Quote
  #8  
Old March 6th, 2009, 11:16 AM

pyg pyg is offline
BANNED USER
 
Join Date: Jan 2009
Location: a small farm
Posts: 340
Thanks: 73
Thanked 103 Times in 42 Posts
pyg is on a distinguished road
Default Re: Custom nations

Quote:
Originally Posted by Sombre View Post
Quote:
Originally Posted by pyg View Post
This will actually be an upcoming example for SP use where you pick an original nation to play and it sets all the rest (AIs) to IndyPundits with the independent flag.
Why? I don't get it. What's the benefit of the AIs in SP all having the same (indy) flag? The game still plays the same.
It's not all that significant, but if you enjoy SP with strong independents and/or SemiRand/Chaos maps having a real AI hiding behind the independent flag can be interesting because you don't expect independent flags to be a threat. Suddenly being invaded by a massive army of independents where you weren't expecting can throw off your plans. I'm currently working on some AI nations that will be somewhat stronger than the original nations for use this way. (dmg/nations/II_AI.py). I will post it into this thread when I have something. I find it most interesting to mix regular national flagged AIs and with independent flagged ones about 1:1.
Reply With Quote
  #9  
Old March 6th, 2009, 12:06 PM

Sombre Sombre is offline
BANNED USER
 
Join Date: Feb 2007
Posts: 5,463
Thanks: 165
Thanked 324 Times in 190 Posts
Sombre is on a distinguished road
Default Re: DomModGen (AnyAny/IndyFunPits)

I think you could quite easily tell it wasn't an indy province, even from a cursory inspection. Maybe if you stopped yourself from paying any attention you wouldn't. It just sounds boring to me, fighting interchangeable armies of indy troops for the entire game. You wouldn't even have any enemy nations to shake your fist at if you lost a fight.
Reply With Quote
  #10  
Old March 6th, 2009, 02:38 PM
Ballbarian's Avatar

Ballbarian Ballbarian is offline
Colonel
 
Join Date: May 2005
Location: Kansas, USA
Posts: 1,538
Thanks: 289
Thanked 194 Times in 94 Posts
Ballbarian will become famous soon enough
Default Re: DomModGen (AnyAny/IndyFunPits)

Sounds like fun to me pyg.
Thanks for sharing!
__________________
RanDom v2 - Map gen & Semirandomizer.
Province Editor - Custom province creation made easier.
God Editor - Custom pretender creation made easier.
Map Forge - Map editor
Reply With Quote
Reply

Bookmarks


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On

Forum Jump


All times are GMT -4. The time now is 05:27 PM.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©1999 - 2024, Shrapnel Games, Inc. - All Rights Reserved.