This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
boards:diatoms:diatoms [2015/11/20 23:53] Ozyman created |
boards:diatoms:diatoms [2016/04/21 12:37] Ozyman |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | http:// | ||
- | <board image goes here> | ||
- | ======= Diatoms ======= | ||
- | Diatoms was created for the "Under the Sea" map making competition. | ||
- | ======= Game Play ======= | + | {{ : |
+ | boards: | ||
+ | ====== Diatoms ====== | ||
+ | http:// | ||
+ | |||
+ | Diatoms was created for the "Under the Sea" map making competition. | ||
+ | ====== Game Play ====== | ||
Abandon is on. | Abandon is on. | ||
Line 16: | Line 18: | ||
+ | To win - eliminate all your opponents, or get the required number of territories. | ||
- | ====== Bonuses | + | ===== Bonuses ===== |
" | " | ||
* Triangles = 1 | * Triangles = 1 | ||
Line 25: | Line 28: | ||
There is also a hordes bonus for all territories (i.e. control a territory and all it's neighbors). | There is also a hordes bonus for all territories (i.e. control a territory and all it's neighbors). | ||
- | ====== Vision | + | ===== Vision ===== |
Locked to medium fog. All territories have view borders to up to 3 territories away. Vision is blocked by non-triangle diatoms. | Locked to medium fog. All territories have view borders to up to 3 territories away. Vision is blocked by non-triangle diatoms. | ||
+ | ===== Cards ===== | ||
+ | Start with a wild card - hold up to six. If you hang on to your wild card, you'll always be able to turn in twice with six cards. | ||
- | ======= Science / Inspiration | + | ---- |
+ | |||
+ | |||
+ | ====== Science / Inspiration ====== | ||
I read a lot about diatoms to inspire my map. Here is some of the more interesting/ | I read a lot about diatoms to inspire my map. Here is some of the more interesting/ | ||
+ | |||
+ | === Background === | ||
There are over 100,000 species of diatoms, and they can be found in all types of water. | There are over 100,000 species of diatoms, and they can be found in all types of water. | ||
+ | |||
+ | === Structure and Reproduction === | ||
Diatom cells are contained within a unique silica cell wall comprising two separate valves (or shells). | Diatom cells are contained within a unique silica cell wall comprising two separate valves (or shells). | ||
+ | |||
+ | === Classification === | ||
Diatoms belong to a large group called the heterokonts. | Diatoms belong to a large group called the heterokonts. | ||
Diatoms are traditionally divided into two orders: | Diatoms are traditionally divided into two orders: | ||
- | | + | * centric diatoms (Centrales), |
- | pennate diatoms (Pennales), which are bilaterally symmetrical. | + | |
+ | |||
+ | === Ecology & Importance of Silicon | ||
| | ||
- | Planktonic diatoms in freshwater and marine environments typically exhibit a "boom and bust" (or "bloom and bust") lifestyle. When conditions in the upper mixed layer (nutrients and light) are favourable (e.g. at the start of spring) their competitive edge allows them to quickly dominate phytoplankton communities (" | + | Planktonic diatoms in freshwater and marine environments typically exhibit a "boom and bust" (or "bloom and bust") lifestyle. When conditions in the upper mixed layer (nutrients and light) are favourable (e.g. at the start of spring) their competitive edge allows them to quickly dominate phytoplankton communities (" |
- | The earliest known fossil diatoms date from the early Jurassic (~185 million years ago), although evidence suggests an earlier origin. | + | The earliest known fossil diatoms date from the early Jurassic (~185 million years ago), although evidence suggests an earlier origin. |
+ | |||
+ | === Collecting Diatoms ==== | ||
The surface mud of a pond, ditch, or lagoon will almost always yield some diatoms. They can be made to emerge by filling a jar with water and mud, wrapping it in black paper and letting direct sunlight fall on the surface of the water. Within a day, the diatoms will come to the top in a scum and can be isolated. | The surface mud of a pond, ditch, or lagoon will almost always yield some diatoms. They can be made to emerge by filling a jar with water and mud, wrapping it in black paper and letting direct sunlight fall on the surface of the water. Within a day, the diatoms will come to the top in a scum and can be isolated. | ||
+ | |||
+ | === Role in Forensics === | ||
The main goal of diatom analysis in forensics is to differentiate a death by submersion from a post-mortem immersion of a body in water. Laboratory tests may reveal the presence of diatoms in the body. Since the silica-based skeletons of diatoms do not readily decay, they can sometimes be detected even in heavily decomposed bodies. As they do not occur naturally in the body, if laboratory tests show diatoms in the corpse that are of the same species found in the water where the body was recovered, then it may be good evidence of drowning as the cause of death. Further matching of diatoms from bone marrow and drowning site can strengthen this supportive evidence and a positive conclusion can be drawn whether a person was living or not when submerged. | The main goal of diatom analysis in forensics is to differentiate a death by submersion from a post-mortem immersion of a body in water. Laboratory tests may reveal the presence of diatoms in the body. Since the silica-based skeletons of diatoms do not readily decay, they can sometimes be detected even in heavily decomposed bodies. As they do not occur naturally in the body, if laboratory tests show diatoms in the corpse that are of the same species found in the water where the body was recovered, then it may be good evidence of drowning as the cause of death. Further matching of diatoms from bone marrow and drowning site can strengthen this supportive evidence and a positive conclusion can be drawn whether a person was living or not when submerged. | ||
+ | |||
+ | ====== Development ====== | ||
+ | |||
+ | I've often had difficulty making boards with abandon that I was happy with. It usually seemed to encourage very aggressive behavior, and lots of empty territories. | ||
+ | |||
+ | |||
+ | The ' | ||
+ | <code python> | ||
+ | def setupDiatoms(): | ||
+ | wgmap = WGMap() | ||
+ | wgmap.loadMapFromFile('// | ||
+ | |||
+ | # get territory sets | ||
+ | triangleTerritories = wgmap.getTerritoryIDsFromNameRegex(" | ||
+ | rhombusTerritories = wgmap.getTerritoryIDsFromNameRegex(" | ||
+ | hexagonTerritories = wgmap.getTerritoryIDsFromNameRegex(" | ||
+ | | ||
+ | # add continents | ||
+ | wgmap.continentsFromNeighbors(triangleTerritories, | ||
+ | wgmap.continentsFromNeighbors(rhombusTerritories, | ||
+ | wgmap.continentsFromNeighbors(hexagonTerritories, | ||
+ | | ||
+ | wgmap.continentsFromNeighbors(triangleTerritories, | ||
+ | wgmap.continentsFromNeighbors(rhombusTerritories, | ||
+ | wgmap.continentsFromNeighbors(hexagonTerritories, | ||
+ | |||
+ | |||
+ | # get all territories within n borders - special version to only continue through triangle territories. | ||
+ | | ||
+ | def getATWNB(territoryID, | ||
+ | | ||
+ | tid = int(territoryID) | ||
+ | borderDepth = 0 | ||
+ | allTerritoriesInReach = set() | ||
+ | allTerritoriesInReach.add(tid) | ||
+ | nBorders = int(nBorders) | ||
+ | | ||
+ | while(borderDepth < nBorders): | ||
+ | allTerritoriesAddition = set() | ||
+ | for tirID in allTerritoriesInReach: | ||
+ | tirName = wgmap.getTerritoryNameFromID(tirID) | ||
+ | if tirName[0] != " | ||
+ | continue; | ||
+ | tb = wgmap.getNeighborIDsFromID(tirID, | ||
+ | allTerritoriesAddition |= set(tb) | ||
+ | allTerritoriesInReach |= allTerritoriesAddition | ||
+ | borderDepth = borderDepth + 1 | ||
+ | |||
+ | return allTerritoriesInReach | ||
+ | |||
+ | |||
+ | |||
+ | # add view borders to every territory | ||
+ | nDistance=3 | ||
+ | targetRegex=" | ||
+ | directionality=" | ||
+ | |||
+ | setrecursionlimit(15000) | ||
+ | originalDOM = deepcopy(wgmap.DOM) | ||
+ | newDOM = wgmap.DOM | ||
+ | | ||
+ | for t in wgmap.DOM.getElementsByTagName(" | ||
+ | tid = t.getAttribute(" | ||
+ | | ||
+ | wgmap.DOM = originalDOM | ||
+ | # find all territories that should be viewable from t | ||
+ | twoDist = getATWNB(tid, | ||
+ | | ||
+ | wgmap.DOM = newDOM | ||
+ | wgmap.addBordersToSet(tid, | ||
+ | |||
+ | wgmap.DOM = newDOM | ||
+ | |||
+ | | ||
+ | wgmap.saveMapToFile('// | ||
+ | | ||
+ | |||
+ | </ | ||