Krysík

  Contributors
  • Content Count

    182
  • Joined

  • Last visited

Everything posted by Krysík

  1. How to produce a skybox – 3.3.5. Introduction What is a skybox? The answer is fairly simple, a skybox is a way to light up your zone in WoW. Aside from lightning up the environment, it also allows us to manipulate the way the sky looks (that is why it is called the skybox, but I consider this to be the 2nd order importance of it).The undeniable truth is, that it is really important to light up your zone properly, this produces a very good impression of your zone. However, this process can be quite tidious and certainly it is not easy to do. In this tutorial I will do my best to show you how to produce such a skybox! This is a super huge tutorial, I did my best to nail out the details, however, due to its size I am aware that there will be lots of minor spelling errors, grammar errors and such, please, do let me know about those, I will do my best to get those fixed! Also if you have any suggestions about the tutorial, I will welcome them! All files required for this tutorial can be downloaded via this link: https://mega.nz/file/yEhEnDoK#NQ-zIGSnHjVMXP2tjw_Jcjvqwnf1ZrTyY_5R8ZB9MPk You'll be better off with these files. When we get to DBC works in this tutorial it is good just to see how it works and once we are done, you can just go ahead and try changing some cells here and there. What software we need - MyDbcEditor – simple Dbc files editor - WDBX Editor – more advanced Dbc editor, you can use this instead of MyDbcEditor, however, we are going to use this one to produce BGR codes for our skybox (BGR is pretty much RGB in reverse order). Lets get all the files that we might need - From the latest client patch, we need to extract these: Light.dbc, LightParams.dbc, LightSkyBox.dbc, LightIntBands.dbc, LightFloatBands.dbc a Map.dbc. - In case you want to put there a skybox model to represent your sky, it is good to get your model in advance. The easiest way is just to take a model from higher expansions and downport it to 3.3.5.. It is certainly possible to produce your own 3D model for the skybox, but that is mostly a 3D modeling stuff, and we are not going concern ourselves about this. Basic information about light Dbc files First of all, lets make a little excursion into light Dbc files and lets try to understand what each file does. 1) Light.dbc –this perhaps the most important Dbc file we are going to work with today. This Dbc file is essential when defining a new skybox. In case you want to purely copy a already existing skybox, then this is the only Dbc file you need to edit. The structure is following: Collums: 1. Id of each skybox – not really interesting for us 2. Id of map – this Id comes from Map.Dbc, Id of map on which we want to place our skybox 3. X client side coordinate – X coor. For skybox placement, has to be multiplied by 36! 4. Z client side coordinate – Z coor. For skybox placement, has to be multiplied by 36! 5. Y client side coordinate – Y coor. For skybox placement, has to be multiplied by 36! 6. Inner radius of skybox – at this radius, the skybox won't overlap with other skyboxes, has to be multiplied by 36! 7. Outer radius of skybox – at this radius, the skybox will overlap with other skyboxes, has to be multiplied by 36! 8. Row Id from Lightparams.dbc, for normal weather 9. Row Id from Lightparams.dbc, for normal weather under water 10. Row Id from Lightparams.dbc, for rainy weather 11. Row Id from Lightparams.dbc, for rainy weather under water 12. Row Id from Lightparams.dbc, for spirit world 13. & other - Row Ids for other phases You can read more at: https://wowdev.wiki/DB/Light BEWARE! WoWDevWiki states the order of cooridinates in the standard way (x,y,z), but in fact it is switeched in case of Light.dbc (x,z,y) 2) LightParams.dbc – we have already touched this Dbc when talking about Light.dbc, each row in this Dbc file defines a unique lightning (skybox) setting, those settings can then be used in Light.dbc. Collums: 1. Defines Id of each lightning (skybox), this Id is then used in Light.dbc, it is also used as reference for rows in LightIntBand.dbc & LightFloatBand.dbc 2. Boolean value – Hightlight sky – not sure on this one 3. Id of skybox model (refence to row # in LightSkybox.dbc – we will also mention it later 4. Integer value, defines the clouds 5. Defines how much brightness/ fog will be added, float 0 - 1 6. Defines transparency of shallow River Water 7. Defines transparency of deep River Water 8. Defines transparency of shallow Ocean Water 9. Defines transparency of deep Ocean Water 10. Values from 0 -1, now sure on this one You can read more at: https://wowdev.wiki/DB/LightParams 3) LightIntBand.dbc – this Dbc file defines colours of our skybox, in fact, this is super important Dbc, because it really allows you to customise lightning in your zone. To edit this Dbc file we are going to use WDBX editor. The reason why is fairly simple, WDBX allows us to read and produce BGR codes (simillar to RGB). These BGR codes are then used by the skybox. Functionality of this file is following: for each Id (row) in LightParams.dbc there is 18 rows in LightIntBand.dbc, for instance, for row #1 in LightParams.dbc the first 18 rows in LightIntBand.dbc are bound to this LightParams.dbc row. Generally if we wanted to know what are the numbers of rows that correspond to our LightParams.dbc row the pattern is following: multiply the # of row in LightParams.dbc by 18, then we subtract 17 and the following 17 rows are bound to our original row in LightParams.dbc. Collums in each row: 1. Id of row –has to correspond to LightParams.dbc! 2. Integer value, defines how many lightning phases there are, max number is 15 3. - 18. Time values for each phases (if we wrote 2 in collum # 2 we need to fill in first 2 collums), time is give in half minutes. Say we wanted to put in there 7 am, value 840 corresponds to this time. 19. - 34. BGR codes,these define the colours of our skybox, they follow the same order as our time phases, in case we work with 2 phases, then we need to fill in only first 2 collumds, to produce these BGR codes we can use Colour function in WDBX editor. Each rows – below are described functionalities of each row's collums from 19. to 34. 1. Defines colour of general lightning 2. Defines colour of dispersed light 3. Colour of topmost part of sky 4. Colour of middle part of sky 5. Colour of sky going to the horizon 6. Colour of sky just above the horizion 7. Colour of the horizon 8. Colour of fog in the background (mountains and such) 9. ??? 10. Colour of sun, solar disk and sunrays 11. First colour of clouds 12. Second colour of clouds 13. Third colour of clouds 14. ??? 15. Colour of shallow Ocean Water 16. Colour of deep Ocean Water 17. Colour of shallow River Water 18. Colour of deep River Water You can read more at: https://wowdev.wiki/DB/LightIntBand 4) LightFloatBand.dbc – this Dbc has simillar structure to LightIntBand.dbc, however, this Dbc controls the amount of fox, its density, clouds density, and Moon shine. For every Id from LightParams.dbc there are 6 rows in LightFloatBand.dbc. This Dbc uses very same logic as LightIntBand.dbc, to get the 6 rows corresponding with your LightParams.dbc row you need to multiply the original # by 6 and subtract 5, to get your first row in LightParams.dbc. Collums in each row: 1. Row Id – has to correspond to Id row from (first row is LightParams.dbc * 6 - 5) 2. Integer value, defines how many phases of lightning there are, maximum is 15 3. - 18. Time values for each phase (if we wrote 2 in collum # 2 we need to fill in first 2 collums), time is give in half minutes. Say we wanted to put in there 7 am, value 840 corresponds to this time. Uses very same logic as LightIntBand.dbc 19. - 34. float values, in case we defined only 2 phases of lightning we need to fill in only first 2 collums. Functionality of collums in each row (collums 19. - 34, down below are rows) 1. Defines distance of fog multiplied by 36, from this distance on everything will be shrouded in fog 2. Fog density value, this says at which distance value the fog starts, float values from 0 – 0.999 3. Brightness of Sun and Moon when overlapped by clouds 4. Cloud density float value from 0 - 1 5. ??? 6. ??? You can read more at: https://wowdev.wiki/DB/LightFloatBand 5) LightSkybox.dbc – the simpliest Dbc of all, this file allows us to add skybox models, and edit their properties (such as transparency), we are not going to use this Dbc in our tutorial, but you can definetly go ahead and try experimenting with this one. Collums: 1. Defines Id of each skybox model, this Id is then used in LightParams.dbc 2. Path to our model: „Environments/Stars/[MODEL].mdx“ 3. Integer values flagy, defines properties of the model, such as transparency, 0 – skybox used animation based on time, 2 – shows Sun, Moon and clouds, skybox can be transparent, 4 – produces procedural mist. The most commonly used value is 2. You can read more at: https://wowdev.wiki/DB/LightSkybox Right now we have covered all the important things about the Dbc files. I admit there were lots of it, for sure you don't have to know all of it, but it is good to have a decent image of the structure. You can also read more at WoWDevWiki. Now we will proceed with the creation of a skybox. Creation of custom skybox: Now lets try to make use of our newly gained knowledge of Light Dbc files and lets try producing a custom WoW skybox at Hyjal! First of all, we need to get our client coordinates of the place – X=20540 Y= 11690 Z=1600 We can get these fairly easily in Noggit. First we insert a new row in LightParams.dbc – 954. For now we can leave this row be, or we can copy parameters of some other row. We will return to this later. Now we continue by adding a new row in Light.dbc –first of all lets write our X, Z,Y coordinates 3 multiplied by 36. Then we need to think of the inner and outer radius of our skybox. Lets say 1388 and 1666, once again we have to multiply these numbers by 36. After that we can insert the Id of our row from LightParams.dbc - 954. Now lets move to the harder part – LightIntBand.dbc and LightFloatBand.dbc. Lets continue with LightIntband.dbc. It is nessesary to open this Dbc files in WDBX editor. First we need to add 18 new lines starting with number: 954*18 – 17 down to number 954*18. To make things easier for us, it is always good to fill in all general datas to our newly added row, so that we can just copy it to all that will follow. All together we will be adding 3 phases of lightning – early morning – day – night. So we will use 3 collums of datas – se we will use 3 collums for time and 3 collums for data. First lets put in time value for morning phase, lets say we want to be from Midnight to 8:00, that means we put 960 (480 minutes * 2) into 3rd collum, day-time phase will be untill 19:00, that means 2280 will go into the 4th colum. Same datas can be used for following 17 rows, but it is not must do, you could have different number of phases for each setting. Right now we can move to BGR codes, lets get back to our first row #(954*18 – 17) – starting with collum #19 there are our collums with BGR codes. Lets say we want our skybox to have purple-blue-white like colour. So we generate our colours using Color function. Do 19. We proceed with filling in datas for morning, day and night, for each setting (yep, it is lots of work). At this point I highly recommend you using the Dbc files attached for this tutorial, makes everything much simplier, and to elevate your understanding of topic, just spend some time playing with the Dbcs. Now we are about to edit LightFloatBand.dbc. We no longer need to use WDBX editor, but you can surely use it if you feel comfortable in it. Once again we need to insert 6 new rows, once again their Ids need to correspond to our original Id in LightParams.dbc. The first row has to have Id: 954*6 - 6, 5 more rows follow. We want it to be pretty foggy in the morning,lets set the fog distance in collum #19 (1st row) to 9000 , for following collums lets set the value a bit higher. Simillarly we go on with the next row, this time we put in values from 0 – 1. Next row we fill in 0s or 1s, this one shouldn't really convern us, next row is about cloud density, lets say we want morning to be clouds, whereas nights should be clear (it is good to work with this row in case you don't want to add in skybox model, which is our case). That is all for LightFloatBand.dbc. Next Dbc is LightSkyBox.dbc, I don't want to put in any skybox model this time, so we are not going to use this Dbc. But feel free to give it a try yourself, it is a good starting exercise. If we had added in custom skybox model, we would have returned back to LightParams.dbc to fill in our skybox model row Id, defaulty this value in LightParams.dbc should be set to 0. (Collum 3) As of now we are done! Lets put all our edited Dbcs, blps and m2s into patch, and lets také a look what it looks like in-game We can see that our skybox works in-game! In case you have managed to get it all working, then well done! This is no easy task! If you find yourself running into any troubles with the skybox creation, or if you just want to discuss anything, feel free to ask! Krysík out
  2. Maps have to be produced in 3.3.5. Client only as of now, but you can convert them to higher expansions. Oh, let me explain the texture scalling ( I believe it is called this way?). In MoP Blizz introduced a new tool or option for textures and that is texture scalling, this mean that you can scale the actual size of texture on the terrain. This may sound weird, but this way Blizz created most of MoP+ zones, and thus achieving the unique looking style of mountains that is literally impossible in WoTLK or Cata. Take a look at Kun-Lai Summit zone in MoP and note the mountains. P. S. : I think I have already seen somebody in this community playing around with MoP+ content and I believe he was using this texture scalling, so I wonder how did he approach this.
  3. That is great to see somebody working on post WoTLK expansion. Do you do map editing as well? Adding new maps, using texture scalling and such?
  4. Version 1.0

    69 downloads

    Lordaeron City model pack I'm sharing a model pack containing quite a few Lordaeron City themed models. Some models are simple edited cuts of the original Undercity wmo model, some models are custom made. Many of the models in the pack come from a joint collaboration of me and SinisterX (MTL). I share this pack in hope that Noggit lego-builders will make a great use of it. List of models: Wall - wmo Wall Tower - wmo Gate - wmo Arch Wall - wmo Arch Wall Gate - wmo Altar - wmo Astronomer's Tower Section - wmo City Tower - wmo City Road Ruins - wmo Lordaeron Barracks - wmo Lordaeron Small House - wmo Lordaeron Large House - wmo Lordaeron Chapel - wmo Lordaeron Stables - wmo Lordaeron Crypt - wmo Lordaeron Small Wall - m2 Lordaeron Fountain - m2 Lordaeron Statue01 (Terenas Menethil) - m2 Lordaeron Statue02 (Warrior) - m2 - Note that wmo models are lego friendly and m2 models can be put into their interior with exception of Barracks (they use human generic doodad pack). - Eventhough I tested the models in-game, there may be some model issues, if you find any such issue, do let me know please, I will do my very best to fix it! There goes link to the MTL Undercity series:
  5. Krysík

    Abim34

    From the album: Tel'Abim

  6. Krysík

    Abim34

    Yeah, you are right the seaweed is weird, I should have thinked about that heh.
  7. Very simple, well written tutorial. Producing m2s with UV animation can get very useful! I love it.
  8. Krysík

    Tel'Abim

    Show off of completed Tel'Abim island. The entire zone is located on about 9 adts in total, on a separated map, surrounded by ocean ( 3 adts of water in each direction from the island). Waters surrounding the island are rich on environment just as the island itself. Functional world map, minimap, brand new skybox comes with the island as well, several custom m2 and wmo models were also made for the map. Video cover of the map is coming in the following weeks. Link will be placed here, once the video is out. Special thanks for cooperation goes to Experimensts and MTLMedia (SinisterX).
  9. From the album: Tel'Abim

  10. Krysík

    Abim40

    From the album: Tel'Abim

  11. Krysík

    Abim39

    From the album: Tel'Abim

  12. Krysík

    Abim38

    From the album: Tel'Abim

  13. Krysík

    Abim36

    From the album: Tel'Abim

  14. Krysík

    Abim37

    From the album: Tel'Abim

  15. Krysík

    Abim35

    From the album: Tel'Abim

  16. Krysík

    Abim33

    From the album: Tel'Abim

  17. Krysík

    Abim32

    From the album: Tel'Abim

  18. Krysík

    Abim31

    From the album: Tel'Abim

  19. Krysík

    Abim30

    From the album: Tel'Abim

  20. Krysík

    Abim29

    From the album: Tel'Abim

  21. Krysík

    Abim28

    From the album: Tel'Abim

  22. Krysík

    Abim27

    From the album: Tel'Abim

  23. Krysík

    Abim26

    From the album: Tel'Abim

  24. Krysík

    Abim25

    From the album: Tel'Abim