addisong / jurassic Goto Github PK
View Code? Open in Web Editor NEWA team survival mod for Warcraft 3
License: GNU General Public License v2.0
A team survival mod for Warcraft 3
License: GNU General Public License v2.0
I cannot put code here if it's not code. Therefore, I'll need to convert some of my simpler triggers into Jass, so that I can save it here.
Additionally, I need to ensure a style guide is followed for my code. I'll give a rough outline below:
// Includes at top of file
include "file.j"
// Globals should be declared at the highest level trigger that uses them.
globals
force PLAYERS = CreateForce()
location MAP_CENTER = Location(16384, 16384)
endglobals
// Note the function declaration. Use 'void' instead of 'nothing'
void selectUnit() {
// Do not include the (implicit) keyword 'local'
location spawnpoint = MAP_CENTER
// Do not include the (implicit) keyword 'call'
CreateUnitAtLoc(GetEnumPlayer(), 'h000', spawnpoint, GetRandomReal(0, 360))
// This is cJass - remember to make use of { }
if (GetLocalPlayer() == GetEnumPlayer()) {
ClearSelection()
SelectUnit(bj_lastCreatedUnit, true)
}
}
// Function comments should always be included, even if just simple ones.
/**
* Adds one to the number provided, then doubles it.
* I could have done this by typing: "++subject*2"
*/
int addOneAndDouble(int subject) {
subject++
subject *= 2
return subject
}
The mechanic should be able to create vehicles that can transport the entire team to new bases. This is a critical element of the game, and should never be far from any players mind.
It is a boring game in which the mechanic builds fantastic machines whose only purpose is to sit idle behind turrets and walls. It is expected that even on the easiest difficulty, a complete relocation should have to happen once due to insufficient resources, and it is the mechanics responsibility to pack the other survivors, items, and even buildings up for the move.
The mechanic should, in their spare time, be using remote controlled robots to perform reconnaissance and other minor tasks. These tasks include:
The mechanic is a partner to the engineer, and co-operation should be extra rewarding between them. This can be arranged by enabling the mechanic to provide permanent bonuses to engineer turrets, and being able to buy an upgrade which allows the transport of turrets, allowing the quick deployment of defences at a new location.
The variance of dinosaurs and other creatures spawning is the first factor that determines difficulty as time progresses, also known as dinosaur level. The second factor is the dinosaur anger, which increases dinosaur move-speed, attack-speed, and health regeneration.
The dinosaur level dictates the types of dinosaurs that are allowed to spawn. Level 0 dinosaurs are meant to be minor threats that keep survivors on their toes, but little more. Higher level dinosaurs will be major threats that may require a few players to take down.
Because there will be quite a big gap between the increasing of dinosaur levels (due to me not wanting to make 20 sets of dinosaurs for each level, so that difficulty scales nicely), there will be a second timer which increases the dinosaurs anger, every minute or so. This will just be a global aura, which affects all creatures.
Each of the four lands should be different than the others, with bonuses and penalties. Additionally, there should be at least 2 creatures that are unique to the lands. This ensures that players can make themselves feel better by saying things like "I knew we should have gone to the X lands", and increases replayability.
The snow lands have an emphasis on frequent relocation (due to sparse trees), so naturally the mechanic is the most useful class. However, this shouldn't be a huge problem, as dinosaurs will be slow to chase, due to the fact that every living creature is slowed - survivors and dinosaurs alike, but vehicles are not. Survivors are able to place the 1x1 barricades for free, instead of for 1 lumber (which are replaced by packed snow walls). There should be far less insects, and a few more tanky creatures.
The mountain lands has an emphasis on defending your ground, and as such will have more larger, stronger dinosaurs (T-Rex, etc), and plenty of roaming dinosaurs. Buildings should gain extra armour and damage to compensate, increasing the value of engineers significantly.
The swamp lands has an emphasis on sprawling, open bases, which grow according to the demand for lumber. Survivors should not rely on static defences, but instead on mobile weapons. Poachers and biologists will be the most useful, as they can move to defend any area, and are able to make good use of an open base. There should be very few large creatures that would raze entire bases. Instead, packs of raptors and medium sized creatures should be the most common, along with plenty of fliers and insects.
The tropical lands is basically the neutral land. There is a small bonus to survivor movespeed and health regen, and there might even be a few mini "quests" or similar things to perform.
I need models for every dinosaur, and I need to give each of them realistic statistics and abilities.
For every level, there should be a:
After this, I need to make sure that they are correctly mapped, and have an appropriate chance of spawning at each level.
I'd also like to make an "-dinos" command, which gives info on the creatures that can currently spawn (DPS, effective HP, strengths, weaknesses)
Every class should stem from a single building, of which the survivor can only have one of. This building allows them to choose their speciality, by upgrading it into the correct type.
Survivors should be able to change specialities as much as they wish, but never multi-task.
Every specialist should have their own store upgrade, which allows the purchasing of several items unique to their store.
The game should end after the duration has expired, but at some point this should be extended to be more than just a fade-to-black.
Ideally, once the time has expired, the survivors would have to make one final trip to a random location on the map (at least X units away), where they must perform some sort of evacuation. This could be a number of things, such as:
Showing statistics would also be nice, such as the players damage, kills, repairs/healing, income, and even a few awards, such as "Got the closest to death (4hp)" and "Went X minutes without doing Y"
Dinosaurs should spawn in numbers appropriate for both the difficulty and the number of players.
Any given (non-roaming) dinosaur should be assigned a player. It will always head in the general direction of the survivor, by attack-moving every several seconds to a point within a few hundred units of the middle of a line drawn between the survivor and the dinosaur. This ensures that the dinosaur is not heading in a straight line towards the survivor, but will always approach their location, even if they are left far behind on the map.
Care must be taken to ensure that dinosaurs do not lose their target if they enter a vehicle or building.
Expand
Possibilities:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.