Jump to content

Search the Community

Showing results for tags 'Dragons'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • News & Announcements
    • News
  • Project Zomboid
    • PZ Updates
    • General Discussions
    • Bug Reports
    • PZ Support
    • PZ Multiplayer
    • PZ Community & Creativity
    • PZ Suggestions
  • PZ Modding
    • Tutorials & Resources
    • Mods
    • Items
    • Mapping
    • Mod Ideas and Requests
  • General Games Development
    • Indie Scene
  • Other Discussions
    • General Discussion
    • Forum Games & Activities

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Twitter


Interests

Found 7 results

  1. RoboMat's Modding Tutorials - An introduction to modding for Project Zomboid - I - Introduction I1 - Where to start I2 - What is needed I3 - Lua Tutorials I4 - Other Resources II - The first steps II1 - Getting the connection II2 - The entry point: Events III - The first mod III1 - Preparations III1a - Folders III1b - Our mod's identification card III1c - The actual lua script III2 - Adding items to the inventory III3 - Handling keys III4 - Detecting the correct key IV - Custom professions IV1 - Creating a custom profession IV1a - The foundation IV1b - Creating the profession IV1c - Creating a new trait IV1d - Custom Spawnpoints IV1e - Custom Profession Clothing IV1f - Putting it all together IV2 - Linking Professions / Traits to game mechanics I. Introduction Hello there, this is my attempt to write a few modding tutorials for the community. I will try to update this whenever I have some spare time. 1. Where to start First things first. When I started looking into the code of Project Zomboid and the different mods I was a bit confused. There was the source code in Java, the additional code in Lua and the scripting language and I didn't really know which one to look into. To spare you this confusion I'll explain their purpose shortly: Java: Most of the source code of Project Zomboid is written in Java. While you can modify the java files it is not recommended. According to the developers changing the java source code won’t be necessary in future versions of Project Zomboid, so we won’t look into that. Eggplanticus has made a nice post about how to spelunk in the Java source if you want to try it nonetheless. Lua: There already are parts of the source of PZ that have been ported to lua. If you really want to get into modding, you won't get around learning its syntax. Scripting: At the moment it is only used for easily adding items to the game. While we will cover some of the basics of the scripting language we will mostly work with lua coding. 2. What is needed Basically to edit a lua file you can use any standard text editor that is capable of saving simple (unformatted) text files. So Wordpad (Windows) or TextEdit (Mac OS) will do. While it is possible to create a script with those programs they miss many features a specific IDE will give you (syntax-highlighting, auto-formatting, etc...). I prefered working with Eclipse IDE with an extra lua plugin installed for quite some time, but recently switched to IntelliJIdea - haven't been looking back ever since. There are other free alternatives like gedit, Notepad++, ZeroBraneStudio or XCode for example. Find one that works for you and stick with it. Remember: It's not the program that does the work. None of them will turn you into a RobertJohnson over night, they only make your life easier. 3. Lua Tutorials If you have some experience with programming already Lua will probably be fairly easy to pick up for you. I mainly used the official manual to learn the language, but of course there are many other great tutorials out there. From time to time I check the lua wiki and of course stack overflow. Just to be as clear about this as possible: This won't be a tutorial about lua. It will be a tutorial about modding Project Zomboid. If you don't understand parts of my code, you probably should learn some basic lua syntax first. If there is one thing I don't like then it's people who don't even take the time to read through the tutorial notes, then copy&paste the code and finally spam the thread with questions about "why it doesn't work". Don't be that person (unless you are Rathlord). 4. Other Resources For more tutorials you should visit pz-mods.net and the tutorial section on the indiestone forums. If you have further questions you can post them in the modding help section of the the indiestone forums and one of the many coders will help you for sure. TOC Last updated: 12.11.2013 II. The first steps Okay now that we got that out of the way let's move on to the actual modding part. 1. Getting the connection To mod the game we somehow have to interact it. Lua's main purpose lies on extending existing programs written in other programming languages. As mentioned in the previous chapter the main base of Project Zomboid was written in Java. That's where the connection between lua and the java source code happens. With lua we can access all the public functions written in the Java source code. -- lua function function doStuffInLua(_player) -- getSpecificPlayer() is a public method defined in the java source code -- that returns the player. We can access it through lua. getSpecificPlayer(_player); end But how do we know which methods there are!? Well, we can look at the javadoc. It's basically a complete list of all methods in the Java source code and it has even been updated to 2.9.9.15 recently. If you want to be on the save side I suggest that you open the source code and look through it yourself. I use a small programm called JD-GUI for that purpose. It has a useful search function that can search through the whole source code. In the course of this tutorial I will mark methods we call from java so you don't have to worry too much about that at the moment. Eggplanticus also released a good tutorial on how to decompile the java source over here. 2. The entry point: Events So now we know that we can call Java methods from our lua code, but we still don't know how we actually execute our lua code. We need something that runs our code, when Project Zomboid runs. This will be done with Events. You can think of events as entry points to the source code of the Project Zomboid source code. Once Project Zomboid encounters an Event from a mod it calls the associated function. -- the function we want to execute function sayStuff() -- Java: we get the first player local player = getSpecificPlayer(0); -- Java: let the player speak player:Say("I like turtles."); end -- this event will be fired every ten ingame minutes. -- In this case sayStuff() is the associated method and -- thus will be executed every ten minutes. Events.EveryTenMinutes.Add(sayStuff); This short "mod" lets the player talk about his love for testudines every ten minutes in the game. Nothing great but it gets the point across. There are already many different events added to the game which we can use for our mods and the developers are constantly adding new ones. For a somewhat complete list check out the Event Reference on pz-mods.net. Don't worry though, we will use some of them throughout this tutorial so you will slowly get the hang of it. TOC Last updated: 01.10.2013 III. The first mod Let's continue with a little more complex example. We will create a small cheat script that adds some items to the player's inventory when a certain key is pressed. 1. Preparations At first we're going to set up a proper folder structure and all the files we'll need to get the mod to work with Project Zomboid. Please note that this tutorial has Version 2.9.9.17 and later in mind and thus is going to use the structure needed to work with the modloader. If everything is done right our mod will later on appear in the game like this: The almighty RobertJohnson has released a more in-depth tutorial about the modloader and mod.info functions. Once that version is released I'm going to update this post too! a.) Folders Please note, that the folder structure might slightly variate depending on what IDE you are using. I'm going to show you the end-structure which I use when I release my mods: I named the topmost folder (we are going to call this the base folder from now on) after our mod: CheatMod. This base folder is going to contain ALL of our mod files. The "media/lua" folder is basically the location of the vanilla lua files. When we drop our mod into the modloader it is going to copy the files in our base folder to their specified location in the PZ source files. This way our mods don't overwrite any base files and the mod can be removed from the game at any time without breaking it. Yay for the nifty modloader! b.) Our mod's identification card The modloader needs some way of identifying the mods given to it. This is done by the so called mod.info file. It is a simple (unformatted!) text file which contains some important information about our mod. It must be put into the base folder: To make it work we will have to fill it with information of course. Copy this to your mod.info file: name=Cheat Mod (1.0.0) poster=poster.png description=This mod is used to explain modding for Project Zomboid. It is going to show several aspects of modding from start to finish. -by RoboMat id=CheatMod name: The name of the mod. poster: The image file that is displayed in the mod menu in PZ. description: A short description of your mod. I am not sure how many characters this supports. id: The id of our mod. This is used to identify our mod. The id must have the same name as the base folder of our mod (in this case: CheatMod). If you drop you folders into your Project Zomboid "mods" folder now it would already display it as a mod in the game: Of course this isn't really a mod yet. We still need to give it some functionality c.) The actual lua script The last file we need to create is the lua script file. We are going to call it "AddItems.lua" and put it into "media/lua/Mods/CheatMod". Make sure that you really are using the correct suffix of ".lua". Now we are set and ready to begin working on our first mod! 2. Adding items to the inventory We are going to start with a simple script that allows us to add a few items to the player inventory as soon as a certain key is pressed. Adding items is a fairly easy task as you will see. Open your AddItems.lua and enter the following code. local function addItems() local player = getSpecificPlayer(0); -- Java: get player one local inv = player:getInventory(); -- Java: access player inv -- Java: add the actual items to the inventory inv:AddItem("Base.Axe"); inv:AddItem("Base.RippedSheets"); inv:AddItem("camping.TentPeg"); end As with the previous examples our starting point is the player. We need to "get" him first with getSpecificPlayer(0). We then can access his inventory with the getInventory() call. "getInventory()" returns an ItemContainer which happens to be the player's main inventory. This means we now can use all the java functions defined for the ItemContainer.class and one of them happens to be the nifty AddItem(...) function. If you look at the javadoc of this function you will notice that it expects a String as a parameter. What it doesn't tell you is, that it actually needs the module of the item you want to add and the name of the item itself. You can read our example above as "add item Axe from module Base". The code above would give the player an axe, some bandages and a tent peg from the camping module. How do you find out the modules and names of the items? Of course by looking through the source files. All items are currently located in "/media/scripts/items.txt", "/media/scripts/newitems.txt", "/media/scripts/camping.txt" and "/media/scripts/farming.txt". Just take a look at these files - the rest should be self explanatory. 3. Handling keys As we haven't defined an event yet, the function is pretty useless right now. We want the items to be added whenever the player presses a key and luckily the devs have given us the great OnKeyPressed event for that purpose. Let's add it to our mod: local function addItems() local player = getSpecificPlayer(0); -- Java: get player one local inv = player:getInventory(); -- Java: access player inv -- Java: add the actual items to the inventory inv:AddItem("Base.Axe"); inv:AddItem("Base.RippedSheets"); inv:AddItem("camping.TentPeg"); end -- Will be fired whenever we press a key. Events.OnKeyPressed.Add(addItems); This event will be called whenever a key is pressed in the game. The only problem is, that the event doesn't care which key that is. If we would leave our mod like this, the player would get spammed with countless items. We need to fix that! 4. Detecting the correct key One of the great things about events is, that some of them pass useful parameters to the function which is called through the event. The OnKeyPressed event for example passes the number of the pressed key to the function. The called function in this case is of course "addItems()". To use the parameter we have to slightly modify our code another time: -- We added the parameter to the function which -- will be passed to the function as soon as the -- event fires. local function addItems(_keyPressed) local key = _keyPressed; -- Store the parameter in a local variable. print(key); -- Prints the pressed key to the console. -- We test if the correct key is pressed. if key == 25 then local player = getSpecificPlayer(0); -- Java: get player one local inv = player:getInventory(); -- Java: access player inv -- Java: add the actual items to the inventory inv:AddItem("Base.Axe"); inv:AddItem("Base.RippedSheets"); inv:AddItem("camping.TentPeg"); end end -- This will be fired whenever a key is pressed. Events.OnKeyPressed.Add(addItems); Notice the _keyPressed parameter that was added to our function. You might wonder about the leading undaerscore. It is just a thing of coding style that I like to do, to be able to distinguish parameters from local variables in the function's body. The same goes for storing the parameter in the local variable "key". It might seem superfluous at first, but if you want to change the content of this variable later on, you can easily do that by changing its declaration at the top of the functions instead of having to track down every single occurence. Anyway, they _keyPressed parameter will receive a number corresponding to the pressed key and pass it into our function. Unfortunately I'm not to sure which numbering method is used in Project Zomboid, but I think it might be the one from LWJGL. You can use the print(key) call in the function to easily find out all numbers you need to know anyway. Basically we just have finished our first real mod. Save the AddItems.lua and copy your base folder into the Project Zomboid-mods folder. Now you can go into the game and enable your mod (restart the game afterwards!). Once you are in the game now, you should be able to cheat items into your character's inventory by pressing the 'P' key on your keyboard. TOC Last updated: 12.11.2013 IV. Custom professions Admittedly our first mod isn't very impressive so we are going to expand it a bit. The biggest problem at the moment is, that the player can cheat weapons into his or her inventory every playthrough, which might ruin legit savegames. 1. Creating a custom profession That's why we are going to create a custom "Cheater" Profession and link the cheat code to it. a.) The foundation Of course we need to create a new lua script. I'm gonna call it "CheaterProfession.lua" and save it in its own folder (Note: Basically it doesn't matter where you save your lua files, but good structuring will make it easier for you and others to organize and understand your project). After creating the file open it and add the following lines: -- CheaterProfession.luarequire'NPCs/MainCreationMethods';require'NPCs/ProfessionClothing'; This basically makes sure that the file is loaded after those two files which enables us to use their functions. (If someone has a more technical explanation feel free to PM me or comment below!). b.) Creating the profession Now we can start with actually creating the new profession. Add these lines to your CheaterProfession.lua -- CheaterProfession.lua require'NPCs/MainCreationMethods'; require'NPCs/ProfessionClothing'; local function initProfessions() -- Java: Create a new profession. local cheater = ProfessionFactory.addProfession("cheater", "Cheater", "Prof_rm_Cheater"); -- Java: Add a custom trait called Undesireable (no one likes cheaters ). cheater:addFreeTrait("rm_undesireable"); -- Java: Add the vanilla trait Nightowl. cheater:addFreeTrait("NightOwl"); end Lets go through the code. The part of it which actually creates / registers the new profession is: local cheater = ProfessionFactory.addProfession("cheater", "Cheater", "Prof_rm_Cheater"); It calls the addProfession(String type, String name, String IconPath) function of the ProfessionFactory. The parameters are used like this: type: Used to identify the profession internally in the game's code. name: Human readable name which appears in the game's menus etc. iconPath: Name of the custom icon to be displayed in the game. If we would leave the code here it would create a fine new profession without any traits though. That's where the remaining two lines come into play: cheater:addFreeTrait("rm_undesireable"); This adds a (you probably guessed it) trait to the profession we just created. "rm_Undesireable" is the trait we are going to create in a few seconds whereas "NightOwl" is one of the vanilla traits. Of course PZ doesn't know "rm_undesireable" yet, so we still have to actually create it. Lets do it. c.) Creating a new trait We add a new function above the one we created above to initialise the traits. local function initTraits() TraitFactory.addTrait("rm_undesireable", "Undesireable", 0, "Allows you to cheat.\nShame on you!", true); end Quite similar to the ProfessionFactory we used above, the TraitFactory class allows us to add a new trait by calling addTrait(String type, String name, int cost, String desc, boolean profession). Let me explain those parameters: type: This is the internal name used in the games code. It's also the name of the custom icon to be displayed in the game. ! Has to be lower case ! name: The human readable name displayed in menus etc. cost: Determines how many trait points it will cost to select this trait. desc: The description which appears when you hover over the trait. profession: If set to true the trait won't appear as a selectable trait but instead stays a "profession-only" trait. It really is as easy as that Now you actually already have a fully functional profession which you could play with. But it still is lacking two important parts of the profession system: Spawn points and custom clothing colours. d.) Custom Spawnpoints Spawnpoints determine where in the Gameworld the player will appear when the game starts. Before we can add a new spawnpoint though we of course need to find out its coordinates in the game. For this purpose I have created the "Coordinate Viewer", which displays the player's coordinates as a small overlay in the game. So if our cheater profession should start in the large warehouse (where else!?) the game will show us a player position of X: 3110 and Y: 1809. Unfortunately we can't use those "absolute" coordinates for the spawning code. We have to calculate the "relative" coordinates instead. Don't worry though - it is pretty easy. Basically you just need to divide the absolute coordinates by 300 to get the cells, but more importantly you have to ignore the remainder. Our coordinates for the big warehouse would be X: 10 and Y: 6 then. Now we have the cell in which the player should spawn. Relative to that position we need the exact coordinates and this is where the remainder comes into play. Still using the above coordinates the remainders of the division would be for X: 110 and for Y: 9. This probably sounds more complicated than it is. I suggest that you read through this post by The_Real_AI who maybe explains it a bit better. Now that we have calculated the coordinates, we need to tell the game to use them. -- Set custom spawn points for this profession. -- Modelled after spawn code by RegularX. Thanks to -- The_Real_Ai for his explanation on how to calculate -- them. local function initSpawnPoints() local spawn; -- Create a Spawnpoint in the large Warehouse. spawn = { { worldX = 10, worldY = 6, posX = 110, posY = 8, }, } -- Add our profession to the list of spawnpoints for Muldraugh. BaseGameCharacterDetails.spawnPoint.MuldraughKY.cheater = spawn; spawn = { { worldX = 39, worldY = 23, posX = 138, posY = 100, }, } -- Add our profession to the list of spawnpoints for West Point. BaseGameCharacterDetails.spawnPoint.WestPointKY.cheater = spawn; end Basically we have created a local table which holds our calculated coordinates and added it to the global table BaseGameCharacterDetails.spawnPoint. Take a look at the last line of the function: BaseGameCharacterDetails.spawnPoint.WestPointKY.cheater = spawn; We create a new index cheater and give it the value of our spawnpoint. It is essential that this index uses the type (check the parameters above) of your profession or else it won't work. It is probably self evident but MuldraughKY holds all spawns for Muldraugh, whereas WestPointKY creates spawns in West Point. e.) Custom Profession Clothing Finally we are going to add some custom colors for the profession clothing. The System is quite similar to the spawn points above: Basically we are going to create a table which holds all values for male and female "cheaters". ----- Set custom clothing and clothing colors for this -- profession. local function initClothing() local clothes = {} ProfessionClothing.rm_Burglar = clothes; end We create a table called clothes which will hold all of the necessary values. Then we have to make two nested tables to separate the "male" and "female" clothes (this means the guy can have blue and the lady pink colors for example - yay ). local function initClothing() local clothes = { male = { }, female = { }, } end Now we will add all the values need to create the clothes. First we declare which type of clothing item the character should wear. The male character is going to wear a Shirt and Trousers and the female character gets a Blouse and Skirt. ----- Set custom clothing and clothing colors for this -- profession. local function initClothing() local clothes = { male = { topPal = "Shirt_White", top = "Shirt", bottomPal = "Trousers_White", bottom = "Trousers", }, }, female = { topPal = "Blouse_White", top = "Blouse", bottomPal = "Skirt_White", bottom = "Skirt", }, } end You probably are wondering why there are two variables (top and topPal) for each item for example. As far as I understand the system the "pal" stuff just sets the color palette for the specific item. Why we have to do that ... I don't know It is something we gotta have to ask the devs. Last but not least we are going to give some colours to those clothes. Those values will be stored in two seperat tables called topCol and bottomCol. As you probably figured the first determines the colours of the top the character wears, whereas the latter determines the clothes for pants, skirts, etc. PZ uses the three values Red, Green and Blue (RGB) to calculate the final colour. Those values have a floating point range from 0 to 1 which was a bit strange for me at first considering that most programs and games I've used use values from 0 to 255 I will leave it to you to figure out which values return which colour. In my example here all clothes will be black: ----- Set custom clothing and clothing colors for this -- profession. local function initClothing() local clothes = { male = { topPal = "Shirt_White", top = "Shirt", bottomPal = "Trousers_White", bottom = "Trousers", topCol = { r = 0.1, g = 0.1, b = 0.1, }, bottomCol = { r = 0.1, g = 0.1, b = 0.1, }, }, female = { topPal = "Shirt_White", top = "Shirt", bottomPal = "Trousers_White", bottom = "Trousers", topCol = { r = 0.1, g = 0.1, b = 0.1, }, bottomCol = { r = 0.1, g = 0.1, b = 0.1, }, }, } ProfessionClothing.cheater = clothes end Just like the spawnpoints we add the table of our cheater profession to the global table called ProfessionClothing with the last line of the function. f.) Putting it all together We still need to tell PZ to call our functions once the game boots so that our custom values are initialised. We wlll use our beloved Events for that. Add these lines to the end of your CheaterProfession.lua file: Events.OnGameBoot.Add(initTraits); Events.OnGameBoot.Add(initProfessions); Events.OnGameBoot.Add(initSpawnPoints); Events.OnGameBoot.Add(initClothing); We are done here. Congratulations you have created your first custom Profession The complete file should look like this: TOC Last updated: 12.11.2013 2. Linking Professions / Traits to game mechanics What we want to do now is link a special game mechanic to the trait of the profession we just created. Of course this isn't a must, but it doesn't make much sense to implement a trait that doesn't have any effect in the game, does it? You will see that it is actually pretty easy. Let's get to it. Coming soon™... TOC Last updated: 08.11.2013
  2. Sleeping Overhaul Did you ever want to hole up in the Pile 'o Crepes or Spiffo's Burger Joint but couldn't because there was no place to sleep? Then this mod is exactly what you are looking for. It allows you to sleep virtually anywhere (in beds, on sofas, in tents, in armchairs, on chairs, on benches, on the floor, and more...) and every object has its own comfortability levels which affect the recuperation process. You too can sleep in the lovely smell of crêpe. But this mod does more than adding more sleeping possibilites to the game. It changes the whole sleeping system. The player won't sleep for a fixed amount of time anymore but instead only until he is fully recuperated ... or awakened by a nightmare. You now can also sleep whenever you want - No more "you aren't tired enough to sleep" modals. Take a nap and be happy! Church is closed... but open for napping. There is also a chance to pass out when too tired now, so try to sleep regularly. If it happens, your character will drop to the floor and stay unconscious for a few hours. Of course this has a few repercussions so try to avoid it ... not to speak of the zombies who might munch on your brain while you are dreaming of better days. Who wouldn't sleep in a fast food joint!? The recuperation system is more realistic than with the vanilla sleeping mechanics. With this mod a healthy character who's very exhausted sleeps about 6 hours to be fully rested. But there are other factors that influence the recuperation time. For example being stressed will make the player sleep longer to regain fatigue, because who could sleep deeply during a zombie apocalypse anyway? At the moment the most important factor for the sleeping time is the comfort level of the furniture (from best to worst):Level 0: BedsLevel 1: CouchesLevel 2: Armchairs, Tents*Level 3: Chairs**, Benches, Treatment TablesLevel 4: BathtubLevel 5: Toilet, StoolsLevel 6: Floor* Park Rangers have the "Camping Enthusiast"-Trait which makes tents as comfortable as beds for them. ** Security Guards have the "Chair Man"-Trait which makes chairs as comfortable as sofas for them. Sleeping in a bed will of course offer the best recuperation, but I tried to keep the values balanced so even sleeping on the floor (without any other effects) won't be too bad. Of course I know that there are some people out there who'd prefer sleeping on the floor. For those people the values are easily changeable in the Sleeping_Config.lua file. Some of the new modal dialogues. As of version 1.1.0 there are two new traits for the Park Ranger and the Security Guard which affect the sleeping behaviour for those characters. The custom icons were made by the one and only Thuztor! Finally sleeping is affected by a multitude of factors (stats, comfortability, etc...) and there is even more stuff to come in the future! For a complete list of the current features check out the changelog below. As always crits && comments are appreciated. If you find any bugs or places where the sleeping overhaul doesn't work please report them here! Also the stats and different values aren't carved into stone. If there are issues with the balancing I'm totally open to change it. Download for Updated Sleeping Overhaul (Build 27) updated by Pravus The mod in action: (ENG) Awesome showcase by Rancorist: (GER) Great let's play by totu: Known Bugs: - Player starts sleeping before walking to the object (Fixed in v1.1.0) - Fatigue is reset right after sleeping (Fixed in v1.1.0) - Nightmares happening even when negative stats are zerored (Fixed in v.1.1.2) Special Thanks: EreWeGo: for all the testing and feedback! Thuztor: for helping with the tile sheets && creating the trait-icons! RobertJohnson: for his work and help with modding! aricane: for pz-mods and being a nice guy! 7roses: for helping me figure out the overriding stuff! ... and finally all the people I forgot Changelog
  3. In the most recent dev article released on [9/14/15] it was hinted that there indeed would be a dragon(s) in PZ. I don't know if this is just some inside joke but if its true i feel strongly against it. I made a post on the steam forums which may have been taken down about the same issue, for what reason, i dont know maybe it was too harsh. If so, i apologize. Here we have a game which you combat the common cold. Which potentially will display nutrition and calorie count intake. Soon possibly a very indepth medical system will be implemented. All set in the real world plagued by zombies. No special zombies, just zombies. We have people arguing over walking and running zombies, depth perception. With research done to back it up in the real world. This is a hardcore zombie survival game, dragons to me, very obviously do not belong in the base game. Why should they when even zombie animals are not allowed (which is fine with me). Sure some people might want dragons just like they want thomas the train in skyrim. Or maybe helms deep in left4dead2. Modders can handle it but I don't think it should be in the base game. Unless the game world changes to fit having a dragon involved. LIke having magical shotgun rounds and being able to use spell scrolls. Hey! I am up for that! But the game as planned, does not in anyway seem to fit with dragons. And to me, does not fit with the Romero/Brooks zombie lore as it does not mention dragons anywhere. MY SUGGESTION, if dragons decide to crash the party the game world should be a game world which grants the dragons more of a right to be there, spells, other fantasy creatures and specific items to do with trapping dragons and some specific radio message to tie it all together. And it would be great, just as long as it makes more sense.
  4. So I have read the mondoid earlier and I saw something about our dear dragons... I looked upon my saves and here we are http://image.noelshack.com/fichiers/2015/35/1440448260-exibit1.png http://image.noelshack.com/fichiers/2015/35/1440448239-exibit2.png Your move RJ
  5. Survivor Stories (WIP) This is the latest mod I've been working on. It basically adds a bunch of readable messages to loot containers all over the world which describe the horrors of the Zombie Apocalypse but also the life before the Outbreak. All in all it should create a bit more immersion Also: Easter Eggs. This mod is heavily in development at the moment. Expect bugs and problems all around Download from pz-mods.net ! IMPORTANT: You will need to install my modding utilities to be able to use this mod ! I'm also going to accept custom stories / notes etc. as long as they fit the style of the game & mod. ContributorsRathlordGammlernoobPlannedOnly some notes will have survivor messages on them. Empty notes can be used to write your own stuff down on them.Better UISpecific spawnsMore stories / notesWriteable journalKnown IssuesItem's can only be clicked when expandedUi doesn't have scrollbarsText field isn't correctly wrapped in UI atmNotes can be found too easyNote-Items have no further use once all of them have been foundPermission (Click the spiffo for more informations): Changelog
  6. YOU DON'T NEED TO DO THIS ANYMORE YOU CAN RENT A READY TO GO SERVER. LIST HERE: http://theindiestone.com/forums/index.php/topic/9856-project-zomboid-server-hoster-sites/ TESTED ON DEBIAN WHEEZY, SUPPORT FOR UBUNTU UNKNOWN WILL BE COMING LATER IF NEED BE LOOKING FOR LINUX INSTALLATION GUIDE? GO HERE http://theindiestone.com/forums/index.php/topic/5841-buying-running-a-linux-project-zomboid-server/ SCRIPTS FIXED AS OF 23/06/2014 Hey there, Are you struggling to install a Project Zomboid server? Trying to cut your way through all that Linux mumbo jumbo? Well then do I have the script for you. One of the biggest things I usually get, whether it's through PM's or posts on my Linux server guide is that some people are just struggling too much with the guide. Some people are just not technically minded with these sort of things, so it looks like reading a SCUD's schematics in Russian. With that in mind, this is the first part of a multi part project in making the installation and maintenance of servers that little bit easier. This way of installing requires minimal knowledge of Terminal etc and makes think that much easier. The downside is you have less knowledge about Linux making things a little bit harder to troubleshoot. So obviously use these if you really are struggling, but support for issues that arise might be a tad bit harder to explain on how to solve. Anyway you can choose to use this method, or the full Linux installation guide. The choice is yours on what to do. This version will still require you to download FileZilla and Putty. Script Information The scripts currently come in four parts. two parts for installing the server and grab other necessary scripts as well. One to use when updating the game (currently fixed to a beta branch which I hope to change later on, basically means anytime the game switches over to another branch will recover an upgrade.) and one to start the server (can also restart the server if ran when a server is running.) It's slightly buggy at this point in time as I try and find a better solution to starting the server. If it fails then you can just have to run through terminal. Hopefully I'll have the issue resolved relatively quickly. If you're technically minded and want to take a look under the hood of the script I've put it up on Github: https://github.com/Connall/Project-Zomboid-Server-Scripts So feel free to take a look. Guide to Using Script So first off, obviously go download the software I mentioned above. Putty and FileZilla. For sake of ease anything you see that's formated like this: Formatted like this.means that is something you type into the terminal. Got it? Good, great... alright... moving on. First make sure you have the necessary IP Address to connect to the server, provided by the hoster. Boot open putty and connect to the server using that address. Log into the root user account for the server and do the following. wget http://www.terminal-control.com/pz-server/scripts/pz-server-install.shOnce that's all done, do: bash pz-server-install.shThat will run the script. Follow the instructions that the console says. Make sure to take note of what password you choose for pz-server user since you will need to be able to connect to that user frequently. Once the script has finished close putty and open FileZilla. You’ll now need to edit the projectzomboid-dedi-server.sh and set your RAM values. This is dependant on how much RAM your server has, I personally didn't set them to use my complete server capacity, I did about half but the choice is up to you. (Kirrus: Don't set more than 80% of your VM's capacity.) Use FileZilla and double click on the file and it should open it up in an editor, find these two lines: -Xms1024m \ -Xmx1024m \ And edit the values to your choosing. Save and close the file and it will prompt you for the root password of FileZilla so put it in and it will be updated. When using FileZilla, do not use quick connect but the server manager. When it asks for protocol do NOT use FTP, use SFTP otherwise you will be unable to connect to the server. Now open putty back up and log into the pz-server user and run this command. bash pz-server-start.shThis should start up the server. If it seems to be acting strange then you can do it this way instead: screen -dr(Checking to see if there is a screen running.) If it doesn't say no screen detached, skip next step. screenEnter through it until you face something that looks like: pz-server@server - thing. Do: cd /home/pz-server/Steam/steamapps/common/ProjectZomboidthen ./projectzomboid-dedi-server.shthat will get the server started if the script seems to be acting up. Future... I do plan to make this a more in depth system as time goes on, to hopefully move through complete server autonomy. I want to turn this into a bit of a project hopefully. So will see where it takes me. Support Obviously the scripts should work fine since I've tested them a couple of times but always be on the lookout for any errors that might be spawning in the console in case they might shed light on the situation. I've tested this on Debian Wheezy so I know it should work fine (except for the problems mentioned above) but obviously unknown problems can pop up, so if this is the case then just post in here (please don't PM me) and I'll see if I can't resolve the problem. License For those that care it's using a Attribution-NonCommercial 4.0 International: http://creativecommons.org/licenses/by-nc/4.0/ I doubt the script would get the attention of anybody who would be using it for commercial purposes, but I just decided to do it that way just in case. (Original Attribution and non removal of credits is also required.) I would appreciate if scripts being released as an adapt were done so when it's clear I'm no longer around and can not work on the project anymore. Programmers As I said above, everything is on Github if you want to take a look at the source code to check for anything malicious (which there isn't) before running it on your server, if you feel like pointing something out on a way to improve it then go nuts, I'll listen but I imagine the big ones like checking if program is already installed or check if file exists are already things I want to be tackling in the coming updates (hopefully.) Disclaimer While I make sure the scripts work and won't mess up/with a server, I still must say that you use these scripts at your own risk. I'm not responsible for any perceived damage they may cause and that if using these scripts on a server with existing important data, then I recommend backing up this data before using the scripts. If something does go wrong, a quick fix is usually an OS re-install away. Now obviously I don't believe the scripts should be causing catastrophic problems, but I don't want anybody blaming me for their serving becoming messed up. FAQ Q. Why you doing this? A: I needed a project. I was originally going to write some guides for Multiplayer to exist beside my Linux Server setup guide but the ever changing nature of multiplayer caused a couple of guides to become obsolete. So I decided to tackle an issue on something I knew about and I like helping people, so there's that. Q: How is this going to be expanded? A: One thing I really want to aim to do is make a website interface and cut out the terminal in it's entirety but that's a long time down the road I think. Most likely working on stuff like automating backups and fixing the running server and fixing beta branches. Really just see where the road takes me. Q: I have knowledge about x can I help? A: This is a very personal project for me as a way of building up my knowledge so at the moment I'm not particularly looking for help. You can offer me help, and I'll keep you in mind if I decide to expand this out otherwise I'm just going to keep going at this, chipping it away by myself. Q: Support for OS Y A: If it's a Linux derivative and can run Project Zomboid, odds are a script will come with it. However this is really for people who don't understand Linux all that well, so don't expect me to help every single little os. Q: What about Windows? A: I kind of feel that setting up a server for Windows is easy enough already without requiring more help, so support for it will not be coming. Same goes for Mac's. Q: What about updating scripts? A: At the moment you still have to run the wget command. I'll probably introduce a script update script for the time being use wget for the following addresses if needed http://www.terminal-control.com/pz-server/scripts/pz-server-install.sh http://www.terminal-control.com/pz-server/scripts/pz-server-part2.sh http://www.terminal-control.com/pz-server/scripts/pz-server-start.sh http://www.terminal-control.com/pz-server/scripts/pz-server-update.sh Install should be gotten in root user, while start and update should be gotten through pz-servers user. Enjoy! Credits Myself (Connall Lindsay) - Script Creator Kirrus - Assistance Everybody who read and commented on the guide, really appreciate it. <3
  7. Player Taunts This mod adds more immersion to the game by adding certain player reactions based on different situations. For example the character will taunt during fighting, based on the traits and weapons he/she uses. A hypochondriac character might mumble something like "I need some antibiotics" whereas a short tempered character might shout "Die, die, die!" instead. There also are reactions when the character is injured. He will moan and comment on his health status (this feature is really basic at the moment, but will be improved for the next version). Version 0.7.2: Taunting during combat (now based on amount of kills) Reactions if player is injured (very basic atm) Reactions upon spotting zombies New trait that enables movie quotes Download from pz-mods.net Great Spotlight by Zukumani! Changelog Permission (Click the spiffo for more informations):
×
×
  • Create New...