Just a simple Planet Name generator attached to Minisec to be used when
populate is run.
From 451fb8e698fd252f77cc7c02845d5b9afc0dfb85 Mon Sep 17 00:00:00 2001
From: root <[EMAIL PROTECTED](none)>
Date: Thu, 17 Apr 2008 18:22:45 -0400
Subject: Planet Generator for Minisec
I added some simple randomly generated names to be used when minisec populates
---
tp/server/rules/minisec/__init__.py | 8 +-
tp/server/utils/default.txt | 250 +++++++++++++++++++++++++++++++++++
tp/server/utils/planetGenerator.py | 51 +++++++
3 files changed, 307 insertions(+), 2 deletions(-)
create mode 100644 tp/server/utils/default.txt
create mode 100644 tp/server/utils/planetGenerator.py
diff --git a/tp/server/rules/minisec/__init__.py b/tp/server/rules/minisec/__init__.py
index 9483838..2624468 100644
--- a/tp/server/rules/minisec/__init__.py
+++ b/tp/server/rules/minisec/__init__.py
@@ -26,6 +26,8 @@ import actions.Turn as Turn
import random
+from tp.server.utils.planetGenerator import PlanetGenerator
+
SIZE = 10000000
class Ruleset(RulesetBase):
"""
@@ -100,9 +102,11 @@ class Ruleset(RulesetBase):
for i in range(0, r.randint(system_min, system_max)):
pos = r.randint(SIZE*-1, SIZE)*1000, r.randint(SIZE*-1, SIZE)*1000, r.randint(SIZE*-1, SIZE)*1000
+ PG = PlanetGenerator()
+
# Add system
system = Object(type='tp.server.rules.base.objects.System')
- system.name = "System %s" % i
+ system.name = "System %s" % PG.genName()
system.size = r.randint(800000, 2000000)
system.posx = pos[0]
system.posy = pos[1]
@@ -114,7 +118,7 @@ class Ruleset(RulesetBase):
# In each system create a number of planets
for j in range(0, r.randint(planet_min, planet_max)):
planet = Object(type='tp.server.rules.base.objects.Planet')
- planet.name = "Planet %i in %s" % (j, system.name)
+ planet.name = "Planet %s" % PG.genName()
planet.size = r.randint(1000, 10000)
planet.parent = system.id
planet.posx = pos[0]+r.randint(1,100)*1000
diff --git a/tp/server/utils/default.txt b/tp/server/utils/default.txt
new file mode 100644
index 0000000..183bc26
--- /dev/null
+++ b/tp/server/utils/default.txt
@@ -0,0 +1,250 @@
+ab
+ac
+ad
+af
+ag
+ah
+ak
+al
+am
+an
+ap
+aq
+ar
+as
+at
+av
+aw
+ax
+ay
+az
+eb
+ec
+ed
+ef
+eg
+eh
+ek
+el
+em
+en
+ep
+eq
+er
+es
+et
+ev
+ew
+ex
+ey
+ez
+ib
+ic
+id
+if
+ig
+ih
+ik
+il
+im
+in
+ip
+iq
+ir
+is
+it
+iv
+iw
+ix
+iy
+iz
+ob
+oc
+od
+of
+og
+oh
+ok
+ol
+om
+on
+op
+oq
+or
+on
+os
+ot
+ov
+ow
+ox
+oy
+oz
+ub
+uc
+ud
+uf
+ug
+uh
+uk
+ul
+um
+un
+up
+uq
+ur
+un
+ur
+us
+ut
+uv
+uw
+ux
+uy
+uz
+ba
+ca
+da
+fa
+ga
+ha
+ka
+la
+ma
+na
+pa
+qa
+ra
+na
+ra
+sa
+ta
+va
+wa
+xa
+ya
+za
+be
+ce
+de
+fe
+ge
+he
+ke
+le
+me
+ne
+pe
+qe
+re
+ne
+re
+se
+te
+ve
+we
+xe
+ye
+ze
+bi
+ci
+di
+fi
+gi
+hi
+ki
+li
+mi
+ni
+pi
+qi
+ri
+ni
+ri
+si
+ti
+vi
+wi
+xi
+yi
+zi
+bo
+co
+do
+fo
+go
+ho
+ko
+lo
+mo
+no
+po
+qo
+ro
+no
+ro
+so
+to
+vo
+wo
+xo
+yo
+zo
+bu
+cu
+du
+fu
+gu
+hu
+ku
+lu
+mu
+nu
+pu
+qu
+ru
+nu
+ru
+su
+tu
+vu
+wu
+xu
+yu
+zu
+post
+port
+new
+lim
+pon
+pha
+tas
+phan
+tasm
+phyr
+kil
+rak
+kis
+tar
+mor
+ia
+res
+old
+wor
+sar
+sal
+zan
+pol
+tic
+hy
+ly
+my
+ty
+py
+ome
+cen
+tau
+rion
+rin
+dor
+dol
+lon
\ No newline at end of file
diff --git a/tp/server/utils/planetGenerator.py b/tp/server/utils/planetGenerator.py
new file mode 100644
index 0000000..d4cb116
--- /dev/null
+++ b/tp/server/utils/planetGenerator.py
@@ -0,0 +1,51 @@
+"""\
+Planet Name Generator
+Creates a generator class using a specified textfile with syllables
+A very "lazy" generator
+"""
+import random
+import os.path
+
+class PlanetGenerator:
+ """\
+ Class Planet Generator
+ """
+ def __init__(self, s = os.path.abspath(os.path.curdir) + '/tp/server/utils/default.txt'):
+ """\
+ Initialization:
+ s is a string containing the file name
+ """
+ syl = open(s)
+ self.syllables = []
+ for s in syl:
+ self.syllables.append(s.strip())
+ syl.close()
+
+ def genName(self, theSeed= None):
+ """/
+ Name Generator
+ theSeed is the seed number used for the number generator.
+ """
+ random.seed(theSeed)
+ numberOfWords = random.randint(1, 2)
+ numberOfSyllables = random.randint(2, 4)
+ for x in range(0, numberOfWords):
+ for y in range(0,numberOfSyllables):
+ randomSyl = random.randint(0, len(self.syllables) - 1)
+ try:
+ word += self.syllables[randomSyl]
+ except:
+ word = self.syllables[randomSyl]
+ word = word.capitalize()
+ try:
+ name += ' ' + word
+ except:
+ name = word
+ word = ""
+
+ return name
+
+
+#Testing Code
+#p = PlanetGenerator("default.txt")
+#print p.genName()
--
1.5.2.5
_______________________________________________
tp-devel mailing list
[email protected]
http://www.thousandparsec.net/tp/mailman.php/listinfo/tp-devel