Jump to content

Search the Community

Showing results for tags 'cs:go'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Categories

  • Announcements
  • Updates

Categories

  • Website Updates

Categories

  • Directorate
  • Back End
  • Divisions
    • Arma 3
    • Battlefield 4
    • Call of Duty 4
    • Counter-Strike: Global Offensive
    • Counter-Strike: Source
    • Garry's Mod
    • Insurgency
    • Pirates, Vikings, & Knights II
    • Rust
    • Squad
  • Teams
    • Council
    • Developers
    • Media
  • Misc.

Categories

  • Streams

Categories

  • Bugs
  • Resolved

Categories

  • Guides

Categories

  • Newsletters

Categories

  • Expenses

Forums

  • General
    • Announcements
    • Member Activity
    • General Discussion
    • News
    • Suggestions
    • Projects
  • Divisions
    • Battlefield 4
    • Call of Duty 4
    • Counter-Strike: Global Offensive
    • Counter-Strike: Source
    • Garry's Mod
    • Killing Floor 1/2
    • Left 4 Dead 1/2
    • Overwatch
    • Pirates, Vikings, & Knights
    • Rust
    • RuneScape
    • Squad
    • Terraria
  • Teams
    • Media Team
    • Moderation
    • Public Relations
  • Support
    • General
    • Technical Support
    • Knowledge Base
    • General Appeals
  • Promotions/Giveaways
    • Giveaways
    • Trading
  • Applications
    • Media Team Applications
    • Developer Applications
    • Public Relations Applications
    • Event Management Application
    • Moderator Applications
  • Gaming's General
  • Gaming's PC Gaming
  • Gaming's Console Gaming
  • Mapping's General
  • Mapping's Releases
  • Mapping's Tutorials
  • Programming's General
  • Programming's Projects
  • Programming's Tutorials
  • Art's Art
  • Art's Art Critique
  • BF4's Rush
  • BF4's TDM

Calendars

  • Community Calendar

Found 21 results

  1. Hello, gflclan community. My name is Sofia and i want to offer you my beautiful mod for csgo dedicated server. About modification: This mod is using MySQL with 4 tables for contain all players and world date. Players stats are saving every minute with SERVER+WEB script (so there is less load to game server). This mod is modular with convenient API that contain 20+ functions. All core and modules messages are loggin into file (for ex.: new players, helicopter departure, rocks respawn, information about players, who was intersted in VIP, etc.) Sell pack contains: 1. Plugin (.smx) and source code (.sp) of CORE (+include) 2. Plugins (.smx) and source codes (.sp) of all 11 modules (+include for API) 3. Private map, that was redesigned by our mapper 4. 20 private player models and building model, that were ordered from our modeler 5. 18 private sounds 6. WEB-script for updating players stats in real time Mod opportunities: ★ Gather resources (wood, stones) ★ Interaction menu (F4 button) with all major points (actions, inventory, building, upgrades, info, VIP) ★ Create workbench and craft weapons, lite & hard armor, ammo, grenades ★ Build houses, doors with passwords, chests for save your loot (all are saving after your exit / map change / restart / etc) ★ Airdrop with cool stuff every 10 minutes ★ Fireplaces, where you can melt stone into iron and weapons into iron) ★ Hunger, that lowers health regeneration (all players have 200HP and regeneration). You can restore hunger level by eaten a chicken or a banana (that falls from palms when you gather wood from it) ★ Thirst, that lowers movement speed, you can restore it level by drink water from river or your personal bottle from inventory ★ Viewing, storare, throwing different types of ammo and resoures ★ Pickup loot from dead players ★ Weapon have a chance to misfire ★ You have a chance to bleeding when you got hurt. It blocks your regeneration and slows movement speed (you can remove effect by using healthshot) ★ Stamina, that affetcts time during which you can live without food and water. It grown during life and subsides after death ★ C4 (oh yes baby), that attaches to surface and explodes after couple of seconds, dealing colossal damage in area (the best thing for raids) ★ Voice chat works only with players that are close enough ★ Complete saving all your stats: coordinates, resources, weapons, ammo, upgrades, etc (so when you reconnect to server on another day you will wake up in a same place, with same HP/armor, same weapon & ammo, resources, hunger/thirst level) ★ Tools upgrades, that will allow an opportunity to gather more resources ★ Custom in-game HUD with resources (with images), coordinates and title of the current location ★ Complete sound accompaniment all in-game events: drink, break tree, explode C4, build house, open chest, death, etc ★ Bottle with water, which you can replenish in waterway and drink on battlefield, when the water source is very far ★ Private messages, which help you to discuss plan fo your raid near the target, so you don't use voice chat ★ Binoculars, that can help to scout the situation ★ Nicknames above the head ★ Ability to throw rocks: target takes damage and there is a chance to bleeding ★ VIP with 3 levels (more info below in block 'About monetization') Commands: I. Player commands 1. !help - the basics about game 2. !about - opportunities of the server 3. !advice - advices 4. !pm/!msg/!ls - sent pm to player 5. !tpr - request for teleportation to player (only for VIP) 6. !menu - main interaction menu (for bind, if F4 button is not okay) II. Admin commands: 1. !vanish - toggle spectator mode: fly, invisible. When activated, there is a mind-blowing effect with sound (there is the best thing you will see in the world). 2. !rust - make update (freeze players, save stats, update the map). 3. !tp - teleport you to target. 4. !tphim - teleport target to you. 5. !tpxyz - teleport you to coordinates. 6. !attack - make fake attack to target and all around it. 7. !god - give you invicible mode (any damage is reflected back to attacker, there is nice red shield around you and sound effect). 8. !give - give you something (resources, weapon, hunger/thirst level). 9. !voice (beta) - make connection with you and target (you will be hear only this player, and he - only you). About modules: There are 11 default modules in sell pack: 1. Bottle - adds bottle with water (+point in Interaction menu > Actions). You can drink from it and restore thirst level. Bottle can be replenished in river. 2. Teleport - adds ability to create request for teleportation (/tpr, /tpa) for VIP. 3. Throw rocks - adds ability to throw rocks. Target takes damage and there is a 1% chance to bleeding. 4. Vip Information - adds command (+point in Interaction menu > VIP), that print in chat information about paid privilege and your contacts (fb, discord, skype, etc.). When someone interested in VIP, his nick logged into file (so you can talk to him later). 5. Ads - adds advertising messages each N seconds (about VIP sales, changelogs from last update, etc. Easy changable). 6. Chickens - adds creation, removing, eating chickens and restore hunger level for this action. 7. Helicopter&Airdrop - adds helicopter, which fly every 10 minutes for one of the routes and throw airdrop in random place with very valuable loot. Drop, coordinates, time and all other is easy configurable in module). 8. Player Models - adds 20 unique players models, which are automatically changed: 16 for common players (different jeans + different t-shirts) and 4 for admin/VIP (complete black clothes, seems very cool). 9. Rocks - adds creation, removing, gathering stones. 10. Trees - adds creation, removing, gathering wood. 11. Remove Weapons - periodically clean dropped weapons. About monetization: Mod has specially created VIP with 3 levels, each level has 6 privilege. You can sell whole VIP or by levels. I level: 1. Hungry level gone longer. 2. Thirst level gone longer. 3. +15% HP. 4. Doors have +20% durability. 5. Stamina is filling for 10% faster. 6. Throw rock cost cheaper for 50%. II level: 7. +25% to gather x2 wood. 8. +25% to gather x2 stone. 9. Upgrade tools cost lower for 50 resources. 10. Bottle of water fills in 100% thirst level. 11. Building workbench doesn't cost anything. 12. +15% of ammo in craft. III level: 13. Melting iron cost 7 stones instead of 10. 14. Ability to teleport to ally once in every 5 minutes. 15. -20% for misfire. 16. -20% for bleeding. 17. VIP tag in chat. 18. Unique VIP skin in complete black clothes. [VIDEO] Survival in squad gameplay (you can turn on subtitles): https://www.youtube.com/watch?v=MNSsxvqydpM [SCREENSHOTS] Some in-game screenshots: https://imgur.com/a/EAxGzKv About sell: Pack included everything you need for an instant start of the server and a comfortable game, the modification is done by the finished assembly: everything is set, everything is described, everything is ready. You just need to scatter everything in folders, start the server and enjoy the game (and, of course, good VIP sales). We can test it, so you will see this great mod by yourself. Price for full sell pack: $1000. Contacts: 1. Telegram: @Equiment 2. Steam: https://steamcommunity.com/id/sirequiment
  2. Nintendo64 Mapping Tool In the other guides, I talked about a tool I was making to make some process of ripping N64 models faster. It is finally done and will do most of the texturing work for you. ___________________________________________________________________________________________________ So what can it do ? 1) Convert the .wrl file you get from the emulator into an .obj That means, you no longer need to import the wrl in Blender and then export as .obj Even better, the conversion will be perfectly useable no matter the game you ripped. Saddong encountered an issue with the Blender Import-Export method for the game Castlevania64. Once converted into .obj, the groups names didnt have the texture name in them, which made it impossible to know which texture to apply on which group. He tested with my tool and the .obj he got was useable. 2) Delete all materials from an existing .obj That means, you no longer need to use the AutoClicker to click thousand of time on the Delete button in Milkshape. It will be done in less than a second. 3) Apply all correct materials on an .obj So, you dont need to manually do it and search for each texture in the folder. Even better, you can texture completly a ripped area (again in less than a second), which make it easier to know which texture to apply on which wall in Hammer. Doing that manually usually took me +1 hour if the area had a lot of different texture. 4) Scale the .obj by a given value You can directly scale the model in the tool. 5) Reverse the vertex order You can do it directly instead of doing it in Milkshape. Depending of the game, reversing the vertex order is needed. 6) Merge together groups that use the same texture Instead of having dozens of groups using the same texture, you can merge them into one. I don't recommend doing it on the .obj you use to extract specific model as some groups might use the same texture but with a different color applied to it. So you would lose all these groups. 7) Sort groups alphabetically Obviously, it sort the groups by their name, and put them in an alphabetical order. Unless you merge the .obj, this won't have any effect because of the way I name the groups initially: 0_XXXXXXXX_c.bmp 1_XXXXXXXX_c.bmp etc... It would just sort by the number. The materials are also always added in an alphabetical order, no matter the option you checked. ___________________________________________________________________________________________________ The Tool I first programmed it in Python3, it was a Command Prompt tool only. It was working fine but not really efficient because you had to manually write the path to the file to convert. Another problem was Python itself; to execute the tool, the user needed to have Python installed on his computer, which wouldnt allow people to easily use it. I looked for a way to implement Python script into another language and I found the C# with the plugin IronPython. IronPython only works with Python2, so I edited my scripts to adapt few things that were different between the 2 versions. I made a WPF application in Visual Studio, with a basic GUI and few buttons: ___________________________________________________________________________________________________ How to use it I think the buttons are self-explanatory. But I will explain all of them: Conversion of .wrl to .obj To convert a .wrl to .obj, click Browse, it will open a directory, you can then select the .wrl file you want. Once selected, it will write the path to the file in the box and unlock the Convert button. Click on the button, it will open the last directory you visited (the one where you loaded the .wrl). Now you just need to give a name to the .obj file (per default, it's output.obj) When the conversion is done (it will take 1-2 second depending of the file), a text box appears and says Done. Modification of .obj Again, you need to click on Browse to load the .obj file you want. It will write the path to the file in the box and unlock 3 buttons: Delete all materials from the .obj Apply all materials on the .obj Modify the .obj ________ Clicking on Delete all materials from the .obj will open a directory. Now you just need to give a name to the .obj file (per default, it's untextured.obj) When the new .obj is created, a text box appears and says Done. ________ Clicking on Apply all materials on the .obj will open a directory. Now you just need to give a name to the .obj file (per default, it's textured.obj) When the new .obj is created, a text box appears and says Done. ________ Before clicking on Modify the .obj you first need to select one or more checkbox. Clicking on Scale the model, unlock the text box where you write the scale you want. The value need to be bigger than 0, otherwise there will be an error textbox that appear when you click on the button. I explained earlier what each of these functions does, so I won't do it again. You can then click on Modify the .obj to open a directory. Now you just need to give a name to the .obj file (per default, it's modified.obj) When the new .obj is created, a text box appears and says Done. ___________________________________________________________________________________________________ Advice Make an untextured .obj, import it in Milkshape and use that file to extract specific models you need (always have backup so you dont override). When you rip a specific model, export it untextured as an .obj, using Milkshape. And then use that .obj in my tool, to fully texture it. I often got issue with Milkshape crashing when exporting a completly textured model. It never crashes if the model is untextured. ___________________________________________________________________________________________________ Errors If you enter a path to a file that doesn't exist, there will be an error message. If you put a .obj file in the .wrl path (and vice versa), there will be an error message. If you put a negative scale or 0, there will be an error message. If the main.py file is missing, the tool won't be able to do any modifications to the .wrl / .obj files and there will be an error message. If other .py files used for the current action are missing, it will not create the new .wrl/.obj and there will be an error message. If the IronPython .dll and other files are missing, the tool might just crash when trying to convert a .wrl or modify an .obj ___________________________________________________________________________________________________ Download Link Here is the Tool: https://www.dropbox.com/s/1y59rywc8kcx67w/N64MappingTool.rar?dl=0 You will find the .exe, some plugins used (IronPython and its dependencies) and the Python scripts (.py). If you want to see the original python scripts, here they are: https://www.dropbox.com/s/cpa4g4ze018g6cx/N64 Converter Python2.rar?dl=0 https://www.dropbox.com/s/yntubhymxqn2tjq/N64 Converter Python3.rar?dl=0 ___________________________________________________________________________________________________ Credits Thanks to Saddong for testing the tool when it was only Python and help me find bugs. Thanks to 44 Colt for testing the .exe tool and helping me figure the problems. ___________________________________________________________________________________________________ Adding New Features I might add more option to the tool Make a copy of the used textures inside a folder to make the the vtf conversion easier Maybe generate a .qc for the 'reference models' used for building (see the guide Building a N64 map in Source Engine) Maybe a obj -> smd converter (which might not work with any .obj as I only handle specific parameters)
  3. Moltard's Stuff

    Hello, I will post links to maps I published and show stuff I'm working on. _________________________ CS:S Maps ze_shroomforest: https://gamebanana.com/maps/186471 Originally made by Taskuvaras, I fixed the map ze_shroomforest2: https://gamebanana.com/maps/186967 Unfinished project by Taskuvaras, I finished it ze_shroomforest3: https://gamebanana.com/maps/196166 Made together with Taskuvaras ze_christmas_beta3f: https://gamebanana.com/maps/190101 Fixed and updated with Taskuvaras bhop_Zelda_Stone_Tower: https://gamebanana.com/maps/190843 A bhop map, made using an area from a zelda project I was doing 2 years ago ze_random_escape_b7_3: http://fastdl.gflclan.com/cstrike/maps/ze_random_escape_b7_3.bsp.bz2 Stripper to fix issues: https://www.dropbox.com/s/f5g630glco43bjt/ze_random_escape_b7_3.cfg?dl=0 (disable bhop in specific level, and fix unkillable zm) Originally made by Relaxing Walls, this is an upgrade of the maps ze_random_v9/ ze_random_v10fix. ze_random_escape_b6 was known to crash the zombie plugin and servers, so I fixed it. _________________________ Tutorials I posted some weeks ago, two guides about Nintendo64 Mapping. Ripping Models from any Nintendo64 (as long as the game support the plugin used) Build in Hammer replicas of areas from N64 games (same textures application, same size) These guides are located in the CLUBS section of the forum (which is a bit hidden imo) _________________________ Current Projects Coding I'm currently coding a tool to make ripping N64 models easier and faster. I'm making it in Python and so far all the main functionalities are added: Converting a .wrl file to .obj (you get .wrl from the ripping plugin) Deleting all materials of an .obj Texturing completly an .obj with the good materials Reversing the vertex order of an .obj Scaling the models in an .obj by a specific value I plan some others uses: Copy all textures used by a model to a folder (to easily convert them later) Convert a .obj to .smd Generating a .qc file automatically (maybe only for the 'reference models') I will add a GUI to the application, (in C# probably) to make it useable by anyone easily. Mapping I started at the end of May 2018 a map with @JLlaneras : a Shadow Temple reproduction While we have finished building and texturing the map around the end of June, we haven't worked much on the entities. When Jllaneras was working on some entity stuff of the Shadow Temple, I started making the Fire Temple, which is now fully built and textured. More pics: https://imgur.com/a/SDNSIec We haven't really touched the maps since then, but we will try to finish the Shadow Temple before Halloween. Building these 2 maps made me figure out that using a higher scale for a Zelda map is better. Not only was it quick to build by using bigger units for basic walls, but it's also lead to larger rooms and hallways, which is perfect to have a balanced map for zombies. My original Zelda project, that I started 2,5 years ago, was a reproduction of the Ikana area (final area) of the game Zelda Majora's Mask. Back then, I built everything with 1 unit (smallest size you can use for walls) because I used smaller reference models (a CT model was the size of Link), so it was long to build and it was not clean. I never finished texturing some areas and I didnt build some areas, but the map taught me a lot about building and Vertex Tool. I didn't really have the motivation to work again on that map. So in July 2018, I decided to restart completly that project and do it at a bigger scale. Like with the original project, I started by building the Stone Tower Temple, which is the easiest (no 'natural' shapes that require me to use thousands of brushes). Here is a comparison between the size of the original first room and the new first room. I slacked a bit on the map recently as school restarted and as I'm making the N64 Tool. Here are screenshots from Hammer: (I actually haven't delete useless room from the Inverted Stone Tower and I havent textured yet the 3 new rooms of that temple) And here are the reference models I'm using to build the map: By putting the model this way, I was able to fit every area without one overlapping another This is an old screenshot, so I might have moved some of the models somewhere else. _________________________ That's all for now I guess
  4. Building a N64 map in Source Engine This guide assume you have read Ripping N64 models to Source - V2 and you know how to rip models from N64 games. Here we will focus on how to build a replica of an area from any N64 game. Again, if the emulator cannot start the game with Nemu64 enabled, then the game is probably impossible to rip. Don't forget to take a look at my tool as it will make the texturing way easier: The method I use is basically building the map in Hammer with brushes, using a Reference Model. I add a prop_static in the map, browse to the model and I can start building following its shape. To make things clean, I use the visgroups to easily Enable and Disable the different models. Here you can see all the rooms of the Stone Tower Temple from Majora's Mask. ___________________________________________________________________________________________________ ___________________________________________________________________________________________________ Getting a reference model So, you know how to use the plugin to get the VRML, you can extract the model you want and compile it to Source engine. If you don't, go back reading the previous guide. Convert the .wrl to .obj, import it into Milkshape, scale it by the amount you need and delete all materials. Once you have your model with all materials deleted, do a final scale up to adjust it for your game and export the .smd Use my tool to convert the .wrl and automatically delete every texture of the .obj. One important thing to know is the default material path used by a model when you don't specify one in the .qc file. It will take the path of the $modelname and change the model name into a folder. For example: $scale 1 $modelname "oot_trace/OOT_FT/OOT_FT_Room1a.mdl" $staticprop $body oot_FT_Port "OOT_FT_Room1a.smd" $sequence idle "OOT_FT_Room1a" activity ACT_IDLE -1 fps 1 This is an example of .qc I have been using for my reference models in CS:S. In this case, the model will look for the VMTs in materials\models\oot_trace\OOT_FT\OOT_FT_Room1a\. You remember that we deleted all materials, so which one would he look for ? Well the .smd need atleast 1 material and if none exist, it create one called default. So in this case, the model is looking for a default.vmt in the above folder. While for CS:S it's fine to have missing texture for the reference model (you have seen above the purple black texture). It's not on CS:GO, because that game has the awesome idea of displaying missing textures as blackness. Pretty cool right, you can't do any mapping with this. So a solution I found was to make the model load a default texture. $scale 1.6 $modelname "oot_trace/OOT_FT/OOT_FT_Room1a.mdl" $staticprop $body oot_FT_Port "OOT_FT_Room1a.smd" $cdmaterials "n64_reference" $sequence idle "OOT_FT_Room1a" activity ACT_IDLE -1 fps 1 You can see this new line $cdmaterials "n64_reference". The model will now look for default.vmt in that folder. Of course, what you need now is the actual .vmt and .vtf to load. So why not the good old missing texture from all the other source game. You can download the vmt and vtf by cliking here Texture Reference. The texture might look a bit weird compared to CS:S, but once you zoom in, it's fine. Feel free to use any other .vtf you want, even though the purple black is simple to use in my opinion. Edit the $basetexture in default.vmt For the .qc file, I recommend you to have different 'base' folders for the reference models and the map models. For example, here i used oot_trace/OOT_FT (OOT_FT = Ocarina of Time Fire Temple). All my reference models use that path. For the ripped models I add in the map, I use moltard/OOT_FT/. I plan to make the reference model creation automatic with my tool. ___________________________________________________________________________________________________ Adding the model in your map Add a prop_static in your map (if you are starting a new map, make a brush and add the prop_static on that brush). Browse to the model you compiled. Hold Alt and move the prop to align it on the grid. Depending of the size of the prop, you will be able to build with big or small unit. Zelda related, I had to build everything with Unit 1, when I used the original scale. After I scaled up by 1.6, I could build with Unit 8, making everything way easier and faster to build. So now that you have your model, add it to a visgroup. Select the prop and click on the red cube of the topbar. A small window appear. Make sure 'Create new visgroup' is checked. Add a name and click OK. Your model will disappear from the views, and you can see the new Visgroup added on the right. You can check and uncheck it to make the model appear and disappear. In my first screenshot, you might have noticed I have Sub Visgroup like those you find in the Auto tab. To make them, select a visgroup with your Right Click and drag it on another existing visgroup. To create a new visgroup without using any brush/entity, click on the Edit button. A small window appear, click on New group at the bottom, it will make a new visgroup, you can then rename it and Close the window. You can now drag your model visgroup on the new one _________ Method to align reference models I have a method to quickly add all the reference models of your map, that might not work with all games. In Zelda games, all the models of an area/temple/cave all use the exact same origin. You can see that the first room and the second room of the Fire Temple got the same origin point. So assuming you named the reference models in a logic way (Room1, Room2, Room3, etc...), you can quickly edit the path of the prop_static to select the model you want. Select your first reference prop, copy it (Ctrl C) and do Paste Special (Ctrl Shift V). Set the amount of copy you want to make. If you have 12 models in your area, put 12. Then press Enter or click OK. In my case, 28 because there are 28 differents room in the Fire Temple of Ocarina of time. All the models will be stacked on the first reference model. The next step is to select the model and change its path. Since everything is stacked, you can Click on the first model Change the path (in my case to Room2a) Click on the first model again Change again the path (now Room3a) etc... After doing that for all the models, everything is perfectly aligned and the rooms are next to each others. ___________________________________________________________________________________________________ Build the map So now, it's obvious, you follow the shape of the model to build your brushes. I recommend you to build with Nodraw, and use the 3D Flat Mode of the 3D view. Click on the word Camera to change the mode. While it might seems really easy mapping at first, once you encounter complex shapes, you will have issues building. The 2D views will not render every walls you need to build. Let's take the lava room of the Fire temple for a good example You can probably see the problem. The 2D views cannot help us build, so we need to use the 3D view. But even the 3D view doesn't help much, because of the way textures are applied, you cannot know the size of the brushes you need to make. I found out the method to build after struggling building the Ikana Valley in my old project. Change the 3D view from Textured/Flat to Wireframe. Now, you can magically see how every solid were built in the original N64 games. Triangular shapes everywhere. Back then, every shape had to be triangular (even the Source engine transform brushes into triangles during compile). So while we still cannot use the 2D views to see what we are building, we have the 3D view. You will mainly need to work with brushes with 5 faces in this case. The vertex tool will be your best friend. At first you will surely create many invalid solid (Alt + P to check the errors). But the more you use it, the less you make errors. Here is the Lava Room built and textured (took over 300 brushes to make): _________ Best way to never get invalid solids If you always move 2 aligned vertices of a brush, and if you always work with brushes with 5 faces, there will be 0 issues. Here is a video that show how you should always move the 2 adjacents vertices together. That way you can easily duplicate the brush, move the vertices to create any shape you want. The problems will happen when you will have to use brushes with 4 faces, which are kinda weird. They can be invalid while Hammer doesn't notice it. I often got that problem when building in wireframe mode. In that mode, I wouldn't notice that the brush was concave. The solution is pretty simple to fix, you just need to switch 2 vertices position. _________ Another problems of the brushes with 4 faces These brush are really not well handled by Hammer and when reloading the map, you could have the following problem A vertice get split into few mini-vertices. You will only see it if you zoom in the 2D views and you might notice cracks between the brushes in the 3D views. You can try fixing it with the Vertex Tool, by making a box to select all mini vertices. Then press Ctrl B to merge them all together. Once you reload the map, the problem will surely appear again. If these brushes are func_detail, you won't have any issue during the compilation, but it's always better to not have these glitched brushes. The best way to prevent that is, like I said above, to use brushes with 5 faces. Or to use HammerPatch which is not something I recommend. While it's working as intended, that makes you dependent from a modification of Hammer. And I assume HammerPatch doesn't work on CS:GO since that game runs a modified version of Hammer. _________ Brushes vertices glitching on map reload Sometimes, when doing brushwork with 4 faces solids, these brushes can get modified when you reload the .vmf It mostly happens on very large brushes, and it splits a vertex in 2 (or more) mini-vertices with an offset of like 0.1 unit. So the brush no longer has all his vertices aligned on the grid but it's the kind of brush that need to be a func_detail anyway. In this case, it is fine, you cannot really do anything to fix the issue, because that's how Hammer act with those brushes. If you really want to fix the problem, select the Vertex Tool. Make a selection box around the whole brush to select all vertexes at the same time. Do Ctrl B to snap to the closest grid point each vertexes and if the message Merge Vertices message appear, press Yes. It might just re-do the exact same problem on the map reload. But if the offset is very large (like 10 units), your brush is probably incorrectly made and you might aswell remake it. _________ Brushes with 3 faces error To make brushes with 4 faces, you usually use the vertex tool and merge the vertices together. If you merge the wrong vertices together, you can end up with a 3 faces solid. It is obviously invalid and need to be fixed. You can remake the brush or you can transform it back into a 4 faces solid. To do so, select the brush and the Vertex Tool. On one of the 2D views, you should see 2 vertices that are not connected together. Select both (Hold Ctrl) and press Ctrl F to reconnect them. ___________________________________________________________________________________________________ Texturing the map You have all the textures of the area in the VRML rip and if needed, you can use RiceVideo to get some .png. Since we want to do an exact replica, the texture work should be like in the original game. _________ Use my tool to automatically texture the .obj To know which texture to apply on which face, we will need to use Milkshape and do the texturing in it. Since you know how to do the texturing for a single model, it won't change here. It can take some times though because there are hundreds of different groups. You can of course delete many groups that are unneeded, or that you already converted as a single model. _________ Another way is to look in the game what texture seems to be used, but make sure you are using the good one. As for the texture scale in hammer, it's all about adjusting it until you get the good one. To help you, find a distinctive point on a texture, and count how many time it appears. i.e. Count the bricks of a brick texture in Milkshape. But luckily, once you have found the texture scale of one texture, that texture scale is the same for many others textures in the area. It can change of course, but rarely. With the Zelda maps, 2.25 on X and Y axis was the scale I used the most. ___________________________________________________________________________________________________ 3D Skybox Assuming you know how to build 3D skybox, you know that per default the brushes in the skybox are 1/16 the size of the map brush. Knowing that, you can compile a downscaled reference model, by changing the $scale value in the .qc file. For the example, I will use the Fire Temple map I'm doing. As you can see, the spawn area is surrounded by Skybox brushes. Using a 3D skybox for this area was the cleanest way I could do. Not only was the reference model massive but the area would have been too big and if people don't even visit, what's the point of adding it in the main map. In red you can see the playable area. Everything around is the reference model. As with any 3D skybox, I selected brushes from my main map as reference, I duplicated them, scaled them down along with a sky_camera which I moved in a 3D Skybox. Once I did that, I added my 'mini reference model' in the 3D skybox, and I aligned it with my reference brushes. Once it's correctly added, I simply needed to rip the 'skybox area' and texture it in Milkshape. After that, I convert to .smd, I compile with a 1/16 scale in the $qc, and I align it with my mini reference model. As you can see, everything is perfecly aligned. So I add all the skybox references (model and brushes) into a visgroup to disable them for the compile. I could also delete them, but it's better to have a backup in case I edit the skybox Once compiled, here is the result in game ___________________________________________________________________________________________________ ___________________________________________________________________________________________________ Thanks for reading this guide, let me know if you have any question or if I should add some informations.
  5. Ripping N64 models to Source - V2 This guide is an updated version of the guide I made 2 years ago. Since then, I learned more tricks on how to rip the models. This part of the guide will explain the steps to rip models from Nintendo 64 games. I will do another guide to explain how to build an exact replica of a N64 area. The following is confirmed to work at 100% with Mario64, Zelda OOT and Zelda MM. Mario Kart 64 also work, but as I haven't made many rips of that game, it might not work for everything. Banjo Kazooie, Castlevania work too. Some games can't be ripped, either the game doesn't start with the plugin enabled or the outputed rip is unusable. Once you are done with this guide, read the next one, which explain how you can build correctly a nintendo64 map. Update I was making a tool to help in n64 mapping and here it is now: Every informations about it in that post. Note that some of the software used in this guide are no longer needed thanks to the tool: Blender Free Mouse Auto Clicker And some steps will be way faster now: Converting the .wrl to .obj Deleting all materials from a model Texturing completly a model ___________________________________________________________________________________________________ ___________________________________________________________________________________________________ Software needed Project64: An N64 emulator. It was provided by FrozenState and has all the needed plugins installed Blender 2.63: It is important that you get this version [No Longer Needed] Milkshape 1.8.4: Get the "Full 30 days trial version". Dont take 1.8.5 Crowbar: A compiler/decompiler of models (.smd/.mdl) Software you may need Gimp: Or Photoshop if you have it/can use it. It will be needed for transparency parts VTFEdit: The usual .vtf creator VIDE: It has a Mass VTF Creator Pretador's VMT Generator: Mass VMT Creator Free Mouse Auto Clicker: Or another auto clicker software you know [No Longer Needed] ___________________________________________________________________________________________________ Step0: Installing softwares Install Milkshape 1.8.4. Make sure to get the 30 days trial version (not the free version), so you can register it with the following key: Name = Model Registration Code = oZMl2-J5BdK2-3Ed21dd Open Milkshape Click on Help -> About... Then Register Enter the Name and the Registration Code Click OK A box will appear, and will tell you thanks for purchasing Milkshape. But you will notice on the top of Milkshape window that it's still not registered. And it won't be if you close Milkshape right away. What you need to do is open a .ms3d file in Milkshape. You will find some in Milkshape root folder. For example: valve_skeleton.ms3d Now you got full Milkshape, with no limitation. If for some reason, the key I provided above doesn't work, download this keygen: Open the .rar, and inside go to f4ms01.zip -> f4cg.r00.rar. The tool is in that .rar Write a name and get the Registration Code ________________________________________ Install Project64, you can put it into any folder, no need to install on Program Files. All the plugins used for ripping models are installed. Nemu64 is the main plugin you will use. It will rip the models and dump textures of the area Rice Video is a plugin that can rip all the textures that you render in the game TR64 OpenGL is another plugin that can rip the models, it can be used if you have issue getting some areas with Nemu64. Although only few games can launch with it. And it might be able to preserve the lighting of the original models, but that is out of the scope of this guide. To select the plugin to use, go to Options > Settings (Ctrl+T). Click on Plugins in the Tree, then select the Video (graphics) plugin you want. You can then select the settings of the Graphic Plugin with Options > Configure Graphic Plugin. Don't change anything yet for Nemu64. Go to C:\ . In there, create a folder called VRML. It is where the rips of games will be dumped by the plugin (Textures + Model). If you encounter crashes of games with Project64 2.2, install an older version (2.1), and copy the plugins to its folder: LemD3D8.dll in Plugin/GFX tr64_ogl.dll and .ini in Plugin/GFX RiceVideo files (cfg,ini,dll) in Plugin/GFX or just directly in Plugin (it doesn't matter as you can load it from any folder) I had that problem when I was ripping the big room in Shadow temple. The emulator would directly crash when the room was loaded. Switching to my normal Project64 2.1 (that I simply used to play N64 games) fixed the problem. It might be a setting in FrozenState's Project64 but I didn't find the problem. ________________________________________ If you download my tool, this information below is no longer relevant, as you won't use Blender Make sure you installed Blender 2.63, it is needed to import .wrl files obtained with Nemu64 and export them to .obj The newest versions of Blender can import .wrl too, but the problem is that the names of 'groups' no longer match their associated texture. Which make it impossible to know which texture to apply on which face. ________________________________________ As for Crowbar, make sure to set it up for the game you want (CS:S, CS:GO,...). You can find guides on the Steam group of the software. ________________________________________ For the auto-clicker, get the one I linked or any other you know: ________________________________________ As for the N64 ROMS, I won't provide any. Emuparadise no longer host any ROMS. FreeRoms has probably all the ROMS you are looking for. They can be installed anywhere you want on your computer, you simply need to select the folder: ___________________________________________________________________________________________________ Step1: Dump the game Launch Project64, select Nemu64 as the Graphic Plugin like shown above and start a ROM. Go to the area you want to rip and pause the game (F2). Now go in Configure Graphic Plugin. You will see this window: Check Export VRML and press OK. Now unpause and pause the game quickly (press F2 two times). Go back in Configure Graphic Plugin and uncheck Export VRML. Don't forget it, otherwise when you will unpause the emulator, the game will lag as it will dump textures every frames. The dumped textures and model will appear in C:\VRML. You will find +100 textures .bmp (depends of the complexicity of the area) and a .wrl model file. I suggest you to select all the files created and move them in a new folder. I use many subfolder for my different projects: So you can see I sort the different ripped areas. Always make sure to move the dumped textures and model before doing another rip as the model file is overwritten and you would get tons of duplicated texture. ___ If the ROM doesn't start or if the screen is black, it might be because the game doesn't support the plugin and it is probably impossible to rip. You can try launching the game with the default Graphic Plugin Jabo's Direct3D8 (if you don't have it, use RiceVideo), reach the area you want and do a Save State. Then launch the game with Nemu64 and load the Save State. I can't guarentee it will work or that the models you get won't be corrupted. ___ One thing you will notice is that since all textures are .bmp, there is no transparent texture (.png). All textures come with 2 files: XXXXXXXX_c.bmp = Texture XXXXXXXX_a.bmp = Define the alpha of the texture The _a is the alpha of the texture, which mean you can transform the _c into a png using it. I will explain the process later. If the _a is just a black texture, then the _c is not a translucent texture. If the _a and the _c are the exact same texture, then _c is not a translucent texture either. You can see many textures that don't really seem useful, they either come from the player hud or the skybox. In the above screenshot, you can see a ladder texture which has its alpha .bmp (6DF61CAE_a.bmp) . So we will be able to transform it into a png. But you can also see that only one side of the ladder is there. To save memory on the Nintendo 64, many of the textures were only half and were mirrored once (or twice) when applied in the games. I will explain later how to mirror the textures (really easy with Paint / Paint 3D) and how to apply them correctly on models. You can also notice that all the textures are upside-down, but once applied on models, it will be good. So, while for model you shouldn't modify the texture, if you want to use them in hammer, I recommend you to rotate them. You can do it by opening the picture in the default Photos app of windows and click on the rotating button 2 times. Using RiceVideo plugin, you can dump all textures that you see in the game. These textures will be more complete than the VRML textures and they will have transparency. I will explain how to use RiceVideo later. ___________________________________________________________________________________________________ Step2: Load the model If you use my tool, you can directly convert the .wrl file to .obj, so skip to Step3 I also recommend that you use it as the Blender Import-Export can lead to issues with groups name in some games like Castlevania64. My tool doesnt have that problem. At the bottom, you can find output.wrl. It is the model of the area. Open Blender 2.63. Make sure to use this 2.63 version and not a newer, otherwise you will get problems like I mentionned in the Step0. The groups name will be called "Shape.XXX" (where XXX is a number) preventing you from knowing which texture to apply. When you start Blender, you will see a box and a camera. Press A two times to select everything, press your Delete key and then Enter. The 3D view is now empty, so we can import the .wrl inside Blender. Click on File -> Import -> X3D Extensible 3D (.x3d/.wrl) The model should now be loaded. But we wont modify it with Blender. If you know how to use Blender, feel free to use it instead of Milkshape. This guide is adapted to people who have no experience with 3d modelling software as Milkshape is really easy to use. The interface is a lot like Hammer with a 3D view and three 2D grids. We will now export the model as a .obj Click on File -> Export -> Wavefront (.obj) And export it into the same folder as the .wrl ___________________________________________________________________________________________________ Step3: Import in Milkshape Launch Milkshape, if you followed the Step0, you should have the full version. Click on File -> Import -> Wavefront OBJ and select the .obj file you just exported. The model is now imported, but depending of the game, the visible faces might be reversed and you would only see black textures on the 3D view. You need to reverse the Vertex order. Do Ctrl + A to select every vertices. Click on Face -> Reverse Vertex Order (Ctrl Shift F). If after this step, the model has still black parts, click on Face -> Smooth All (Ctrl M) The model is now correctly visible in the 3D view, but the textures are not correctly applied on most faces. So we will need to delete all current Materials. If you use my tool, you can directly delete all the materials from the .obj You can also do the Revert Vertex Order and the scaling. You can skip to Step4, if you have done everything needed Go to the Materials tab and launch the AutoClicker. If you use the one I linked, set everything to 0 except the 1/100 S. Put 2 to make it click every 0.02 second. Then put your mouse on the Delete button in Milkshape and press the Start Hotkey of the Autoclicker (Ctrl F2 per default). Wait until it's done, and press Ctrl F3 to stop it. There might be a slight delay before it actually stop. I recommend you to save that scaled model without any texture under a new name. It will be easier for you to extract the different models of the area. Depending of the game, the model might be too small for you to easily edit it, so I recommend you to scale it up. For the Zelda games and Mario64, scaling the model by 80 is good. For the final export of the model, you will need to scale it again (with a different value). Do Ctrl + A to select everything, and click on the Model tab, then the Scale button. In the Scale Options, click on Origin and set a value of 80 in the three text boxes. You can now press the button Scale. Again make a save of that model (or just overwrite the previous one). ___________________________________________________________________________________________________ Step4: Get the model you want So now let's say you want a specific model of the room. You simply need to delete the stuff you don't need (make a backup of the 'non textured area' model). Save your current file in a subfolder to keep things clean. I have a different folder for each model I rip. If some models are the exact same with just different size/position, I put them in the same folder. For example, in the Totem folder, I have a model of a Small Totem and a Big Totem from the Fire Temple first room. Click on the Model tab, then the Select button. In the Select Options, click on Face. To move around in the 2D grids and 3D view, hold Ctrl, use the Left Click and move your mouse. To unselect everything, click on Edit > Select None (Ctrl Shift A). Make selection boxes in the 2D views to select the model you want. You will probably select others objects around it, so it will take few steps to get the model you want. Once stuff is selected, click on Edit > Select Invert (Ctrl I), and press you Delete key. Repeat that until you only have the model you want. If you are having trouble selecting only a specific part of the model, try on the different 2D views. If you are having issue deleting small vertices of another object, you can also click on Vertex in the Select Options. Once you have your model, you need to center it at the origin of Milkshape, that will be easier to rotate the prop in Hammer. Click on the Model tab, then the Move button. In the Move Options, make sure each textbox is at 0.0 and change Relative to Absolute. You can now press the button Move. ___________________________________________________________________________________________________ Step5: Texturing the model If you use my tool, texturing the model can be done in one second. Export an untextured .obj with Milkshape and load it in my tool. Press the Apply all materials on the .obj button and save the new .obj You can now skip to Step6. If you see black faces on your model, that mean the backface of the model is enabled. You can disable it by right clicking on the 3D view, and unchecking Draw Backfaces. Also make sure you are in the Textured mode of the 3D view and not Smooth Shaded otherwise you won't see textures once you apply them. So now you only have the model you want to rip. Go in Groups tab. You can see different groups with <No Material> applied, 4 in my case. Their name is what will tell you which texture to apply. That's where people who didn't use Blender 2.63 to import the .wrl will get problems as the name will be replaced with Shape.### (### being a number). So you can see that in the 4 groups, 2 use the same texture: 548308A0_c.bmp and 7F05D05B_c.bmp. So for ease, we can regroup them, to only have 2 groups in total. Make sure nothing is selected in the 2D views (Ctrl Shift A). Either Double-Click on a group name or click once on a group, then click on Select. Do the same for the other group. Copy the name of the texture somewhere so you don't lose it (i.e. a temporary txt file) and then click on Regroup. That will merge the selected groups into a new one called Regroup01 (the next merge will be called Regroup02, etc...) You can now select that new group, then paste the texture name in the small textbox and click on Rename. Unselect everything (Ctrl Shift A) and do the same for the next groups. Once you have done that for all the groups, you should have a much cleaner list. So now you have the list of used textures, you can find and copy them to your model folder. Back to Milkshape, in the Groups tab, select one of the group and copy its name. Then go in the Materials tab. Click on New, it will create a new material called Material01 (next time it will be Material02, etc...). Paste the name of the group in the textbox and click Rename. Then click on the first <none> to browse to the texture (should be fast if you already added them in your model folder). Then you need to Assign that material to the selected group, you can either double click on the material name or click on the Assign button. Once it's done, unselect everything with Ctrl+Shift+A. If you are in the Selection mode, you can also click in an empty area of the 2D view to unselect all. Do that for each group until your model is fully textured. It's possible that the name of a group doesn't have the texture name in it. Usually it's because its an useless element that you can delete. But I got that issue on the Eye Switch model from Zelda which had its sides without any known texture. In that case, I simply applied the Eye texture on the sides and it gave the correct result. So if that happens, look at what that group is used for and if you can delete it. ___________________________________________________________________________________________________ Step6: VTF Conversion and .qc Creation So if you followed what I said previously, in the folder of your current model you have the used textures. We will convert them to the .vtf format using VIDE. So launch VIDE and press the 8th button of the tool bar for the Mass VTF Editor. Copy the path of your model folder: And paste it in the Source Directory and Target Directory in VIDE. Set the picture format to BMP so it will convert every .bmp of the folder. Then press Apply. If your model use .png and .bmp, first set the format to BMP, click Apply, then click Return, change the format to PNG and click Apply again. The next step is to create a vmt for each vtf, which would be long to do manually. To do it faster, we will use Pretador's VMT Generator. Download it (link at the top), extract the .zip where you want and launch the software. Be careful not to have your audio too high when launching it as it will say Hello. If you have issue launching it, delete the folder and re-extract it from the .zip. So at the top you have the Texture Shader. Props only support 2 shaders: UnlitGeneric and VertexLitGeneric. The shader we are going to use is VertexLitGeneric. But if you want one of your material to be fullbright, you can use UnlitGeneric. Select the Surfaceprop you want, although it's not needed for a model. No Proxies will be needed either. As for the Parameters, you will need $model. If your texture has transparency, you will need $translucent too. At the bottom left, there is the browse button. Use it to navigate to the folder with your .vtf files. I recommend you to create a temporary folder on the desktop and move the VTFs there. It will be way faster to go to a folder on the Desktop than anywhere else because the browsing system of the software is not great. So now you have the vtf files loaded, select them all by holding left click and dragging down. You need to add the $basetexture path. The syntax is the following: MyFolder/AnotherSubFolder/ You can add as many subfolder as you want, just make sure you end the path with a / Once you are done, click on Preview to see what the vmt will look like. If multiple vtf are selected, it will show for only one of them. If the vmt looks good for you, make sure the vtf files you want are selected and click on Generate. It will create the vmt files next to the vtfs. If you have one picture that needs transparency but not the others, select that vtf only and generate the vmt with its own parameter. Save the path you used for the vmt somwhere as you will need it for the .qc For my model, I used models/moltard/OOT_FT/Detail/Totem/, which mean my vmt will load a vtf in materials/models/moltard/OOT_FT/Detail/Totem/ Remember that a model doesn't load a .vtf file. It only loads a .vmt in the folder it is compiled for. The .vmt then has the path that lead to thee .vtf, which means you could have the .vmt and .vtf in completly different folders. But for ease, usually you have the vmt and the vtf in the same folder. So now you need a .smd file, it is the Source format you will compile into a .mdl thanks to a .qc file and Crowbar. If you remember, you previously scaled up your model in Milkshape by 80 to make it easier to edit it. This time you will need to scale it again depending of the game: Zelda OOT and MM: 14 14 14 Mario 64: 5 5 5 Other games: You need to figure out the best scale possible What you can do is import a Counter-strike model in milkshape and compare it with the scale Counter Strike Player Model Click to download it I included a .smd and a .obj, so you can import either Once you have scaled your model, you can export it as a .smd Click on File -> Export -> Half-Life SMD and name it like your Milkshape file. In a .qc file, you can change the $scale of the model compiled. _________ Zelda related, while the 14 14 14 scale is perfect for an exact reproduction (Link being around the size of a CT model), it is not adapted for ze gameplay. As you need to think about zombies, if the hallways are too small in your map, it won't be fun for zombies who will get bullied. I have used $scale 1.6 for my lastest Zelda projects (Shadow Temple, Fire Temple, Ikana) Here you can see the Stone Tower Temple (Majora's Mask), I built 2 years ago for my Ikana project with a $scale 1 And here is the Ikana project, that I restarted 1,5 month ago, with a $scale 1.6 It was faster to build cause I could use bigger units (since the areas were larger) and probably because I had more experience building. _________ Create a new text file and change the extension to .qc Paste this into it: $scale 1 // scale up the model after compile $modelname "moltard/OOT_FT/Detail/Totem/TotemBig.mdl" // path of the model once compiled, relative to models/ $staticprop // allow the prop to be static/dynamic $surfaceprop "rock" // the surface property $body FT_Models "TotemBig.smd" // the smd you exported $cdmaterials "models/moltard/OOT_FT/Detail/Totem" // where the model load the vmts, relative to materials/ $sequence idle "TotemBig" activity ACT_IDLE -1 fps 1 // the smd for the 'idle' animation (you are not forced to put .smd) $collisionmodel "TotemBig.smd"{ // the collisions of the model $concave $automass } If you followed the Step0, your Crowbar is setup for the game you want (CS:S / CS:GO). So now you need to compile the model. ___________________________________________________________________________________________________ Step7: Compilation Check if you have the needed files: .smd .qc .vtf and .vmt in their folder Open Crowbar and drag the .qc file on it. You can then press the Compile button. Once the model is compiled, you can have 3 choices: - Click on Goto and Crowbar will open the directory where the .mdl file is. - Click on Recompile will obviously recompile the model, so if you need to edit a parameter of the .qc, you can then compile again - Click on Use in View will open the View tab From there, you can click on the button View to open the model in the Model Viewer of your game _________ Problems that can happen on the model Error in the compile log: Probably an invalid parameter of the .qc, you should see in the log the exact problem. There is no Model appearing on the Model Viewer: Either you put LightMappedGeneric in the model vmts or you did something wrong to the model in Milshape. In the first case, simply replace the shader of the vmt by VertexLitGeneric. For the second case, retart from the untextured .obj Black/Purple textures (= missing texture): On CS:GO, the missing texture result in a totally black model (which is really dumb imo). On CS:S, the missing texture is the black purple texture In the model viewer, look at the Model tab, if there is no VMTs Loaded, the following error appear: *** ERROR *** Model attemped to load one or more VMTs it can't find That means the VMTs are not in the folder you specified in the .qc file or they are not named correctly. In the Model tab, you can also see at the bottom a select list called Materials used. This is the list of VMTs the model tries to load. The name of the VMTs loaded by the model are the same as the textures file name you used Milkshape. So make sure the VMTs are named accordingly. That's one of the difference with exporting .smd in Blender (Blender Source Tool). With Blender, the VMTs name needs to be named like the Material name and not like the file name. If the VMTs are loaded but the textures are still missing, that means the VMTs target non existant VTFs. So verify if the VTFs are there or if they are correctly named. ___________________________________________________________________________________________________ ___________________________________________________________________________________________________ Tips and Trick RiceVideo At the Step0, I talked about the plugin RiceVideo that was included with Project64. One if its feature is to dump textures. While VRML does it too when you rip a model, you noticed there was no .png (transparent textures), only _c.bmp and _a.bmp RiceVideo can dump every single texture you see in the game with their transparency. So go in Project64 settings, change the Graphic plugin to RiceVideo 0.4.4 RELEASE. Then go in Configure Graphic Plugin, under Texture Enhancement & Filters, check Dump textures to files. Press OK and launch your game. Go in the area where you want to dump textures and the plugin will do its job. A folder called texture_dump will be located in the same folder as RiceVideo.dll (Plugin/GFX per default). In there, you will find folders for the different game you used the plugin on. And for each there will be 2 (or more) folders: ci_by_png png_all Dependings of the games, you will find the textures you want in either of those folder. I mentionned earlier that all textures obtained from VRML are upside-down. That is not the case with RiceVideo textures which have directly the good rotation. So if you need to use one of these texture on a model, you will need to rotate it and mirror it. Here is an example of a flower: From VRML, .bmp so no transparency. From RiceVideo, .png transparency but upside down. Previous flower after rotation. Previous flower after I mirrored it. While Paint can rotate and mirror pictures, it will remove any transparency when you save the picture. So it's obviously more adapted for the .bmp pictures you get with VRML. I have used Paint 3D which come with Windows 10 and it's pretty fast to mirror pictures and preserve the .png transparency. To rotate a picture, you can either rotate it in the Photos application of Windows (like I mentionned at the beginning). Or you can do it in Paint 3D (if you don't have it, use Gimp or something else). Right click on the picture, click on Edit with Paint 3D to open the software. Zoom in with your mousewheel if it's too small to see. Do Ctrl A to select the picture. Tools will appear on the sidebar (if they dont, press M): If you haven't rotated the picture earlier, click on the Rotating button 2 times Click on the Mirror button (Horizontal) Once you are done, click away to disable the Tools and do Ctrl S to save the picture. _________ Mirroring Pictures At the beginning, I talked about the N64 using Half textures to save memory. The flower of the previous trick is one of them. Applying it on the model in Milkshape will not give us the result we want. So we will need to Mirror the flower to get its symmetry. Again, I will use Paint 3D, so open the picture like earlier. Do Ctrl A to select the picture, then do Ctrl C to copy it. Then click on Canvas on the top bar. On the sidebar: Make sure that When resizing the canvas, adjust my image as well is unchecked Make sure the Aspect ratio is locked is checked Make sure Pixels is selected and not Percentage You can now grab the square on the right on the picture to double its length. On the sidebar you can see the length, so if it was 16px, increase it to 32px. Since you copied the picture earlier, you can now paste it, move it to the empty space you just created and mirror it. You can now save the picture. Of course, depending of the texture, you will either need to Mirror it horizontally, vertically or both. Go back in Milkshape. If you load that new picture in your Materials, you will now notice a new problem: - The texture is duplicated on the model, which is pretty logic since we doubled its size. We now need to use the Texture Coordinate Editor of Milkshape. Click on Window > Texture Coordinate Editor (Ctrl T). So in this small window, you can see few tools, few options you can check and a select bar where you choose the Group you want to modify. In Milkshape, in the Group tab, double click on the group you want to select. Select that group too in the Texture Coordinate Editor. The group you selected in Milkshape will have a white rectangle in the Texture Coordinate Editor so you know when you selected the correct one. Click on the Scale option, in Factor you can see 2 textboxes. The first one is for the X axis and the second for the Y axis. In our case, we only mirrored horizontally (X axis), so we put 0.5 in the first textbox. To be safe, you can also check Lock Y, so the Y scaling will not get modified if you mess with the other value. Once you are ready, click on the S button next to the textboxes. You will see the change on the Texture Coordinate Editor. To see what changed on the 3D view, simply click anywhere on it. Do the same for the others groups that need it. Depending how you mirrored your picture, you might also need to Scale by 0.5 on the Y axis. One problem you can encounter is after you re-scaled the texture, it is not aligned anymore. The fix is simple, click on the Move Tool of the Texture Coordinate Editor. Again there is two textboxes. Put 0.5 in the textbox you need and press the M button next to the textboxes. In my case since it's not aligned on the X axis, I put 0.5 in the first textbox. Click on the 3D view, and it should be fixed. While 0.5 is the solution and will fix the texture alignment, if, in the Texture Coordinate Editor, the "box" is not on the texture and if you are accurate like me, you might want to fix it. You can use negative numbers in the textboxes, so just put -1 in the textbox you need and press the M button. _________ Draw the backfaces of models To stay on the topic of the flower model, one issue you will encounter is that, once compiled, the backfaces of the model will not be rendered. On the 3D view, you can enable and disable Draw Backfaces to see the difference: With the backfaces enabled With the backfaces disabled To fix it, you need to add the parameter $nocull 1 to your vmts. Here is one of the .vmt of the model: "VertexLitGeneric" { "$surfaceprop" "grass" "$basetexture" "models/moltard/OOT_KG/Flower/16D12D0D_c" "$model" "1" "$nocull" "1" "$alphatest" "1" } You can also see that I use $alphatest 1 instead of $translucent 1. In the case of this model, because multiple translucent texture were crossing each other (flower + leaf), it wasn't rendering correctly. $alphatest fix that issue, you can read more on valve wiki about $translucent. _________ Get a .png texture from the _a.bmp and _c.bmp As you have seen previously, you can easily get translucent texture using RiceVideo. But in case you are not able, your only alternative is to use the _a.bmp with the _c.bmp to get the .png. Depending what the _a.bmp look like, you can see if the texture need or doesn't need transparency: Totally black texture, the texture doesn't need transparency The _a.bmp and _c.bmp are the same, the texture doesn't need transparency The _a.bmp is made only of black and white, the texture need transparency For the example, I will use the leaf of the flower model of earlier. Here you can see the _a.bmp, the _c.bmp and the .png we should get as result. Download Gimp if you haven't done it already, the link is at the top. Feel free to use Photoshop if you are more experienced with it. Open both textures in Gimp (in 2 separate windows), by clicking on File > Open, 2 times. In the _c texture, click on Layer > Transparency > Add Alpha Channel. In the _a texture, do Ctrl A to select it, then Ctrl C to copy it. Go back in the _c texture and paste it. You now have the _a texture on top of the _c texture. We will now use the 2 tools windows which might be disabled on Gimp Launch. To enable them click on Windows -> Recently Closed Docks. Go in the Layers Window. Right click on Floating Selection (Pasted Layer) and click on To New Layer. It will then become Pasted Layer. Go in the Toolbox, and select the Magic Wand. Click on the white areas of the alpha texture. To select multiple areas, hold Shift while clicking. Once you have selected everything that needs to be removed, click on the Eye of the Pasted Layer in the Layers Window. The alpha texture won't be visible, so you can now select the _c texture by clicking on it in the Layers Window. Press the Delete key on your keyboard and it will remove every parts of the _c texture that need to be transparent. You can now save it as a .png Click on File -> Export As (Ctrl Shift E). Give it the same name as the _c texture (1249F6AB_c.png in my example). Obviously, when using a transparent texture, don't forget to use either $translucent or $alphatest in the .vmt _________ Texture with wrong color In some case, a texture ingame has a specific color. But the texture obtained through VRML / RiceVideo is kinda grey-white, or another color. The best you can do is check ingame the color and take a screenshot of the texture. Then use the Eyedropper tool of any software (even Paint can do it) to get the RGB code of the color. Use VTFEdit, import the picture and the usual window appear. You can turn the texture grey by setting the Normal Format to I8 and the Alpha Format to IA88. Press OK and save the vtf. In the .vmt, you will add a $color parameter "$color" "{255 255 255}" Replace it by your RGB code. $color only work with brushes. If you want to use color on a model, you need to use $color2. The syntax stays the same. ___________________________________________________________________________________________________ ___________________________________________________________________________________________________ Thanks for reading this guide, it should be more complete now and more clear. Check the Nintendo64 Mapping Guide and my N64 Mapping Tool, the links are at the top.
  6. until
    On June 23rd and 24th, GFL will be competing with multiple other communities in CS: GO. In this competition, each community will put forward 100$ and a charity of choice, in the end, the victor will have each 100$ donated to their charity! More information can be found here.
  7. https://steamcommunity.com/sharedfiles/filedetails/?id=1386721711 This is one of first version of the map, It is why the map lacks a bit of optimization with these few lags. Maybe if It is fixed, the textures, and maybe the boss, and maybe also its extreme mode, It could be a good try-hard map, in the futur, AND, also for GFL !
  8. So I've been wanting to get rid of CS:GO for a long time now since my computer can't really run it at a playable level, so I'm willing to trade it for Scribblenauts Unlimited or Cuphead (or any other offer but preferably those two). Anyways if anyone wants to trade just let me know!
  9. Hello! As most of the community may be aware, the CS:GO Division has been without a division leader for over a month. This has severely stalled any progress with this division and we hope that with our newest promotion, @Bonk, we can change that and get CS:GO back on track and back to its former glory. Congratulations @Bonk! We hope to see great things from you. Thanks.
  10. Encouraging underage gambling and promoting sketchy csgo scam websites should NEVER be tolerated, please think of the children!!!!!!!! as a deeply pious christian muslim man I will only ever use the default skins, rare skins are tempations from the Devil.
  11. I am glad to announce a nice and detailed guide for CS:GO that all fans will find useful! You can find here tips for shooting and aiming, strafing, taping,bursting,spraying,flicking and tracking. Enjoy! http://csgopedia.com/shooting-and-aiming-guide-for-cs-go/
  12. What is the best game you ever played while being in competitive CS:GO? It can be for fun and laughs, or your best performance. The picture attached was my most recent game and I feel I had my best performance there in a long time.
  13. Need players to play with, comment here and queue up with others! Just stat your rank/skill level and what you want to do, competitive, casual, community severs, whatever.
  14. I am deleting TF2 and don't want the items to go to waste. I am into CS:GO now so I want to trade my TF2 items for CS:GO ones. Pm and I will respond. (Not responding today(The day it comes out))
  15. What is everyone's thought for having a Deathrun server in CS:GO? I'm already aware that we have one for GMod, but I just want everyone's opinion on the subject.
  16. cs:go

    my rank is lem whats urs and how long did it take to get it?
  17. Hey guys I'm brand new here and I just became a member because I would like to play with you all some time on your ZE server. I'm a very active member at Steam-Gamers (just became and admin there) and I have played with some of your members in the past on Steam-Gamers zombie escape server and then I felt compelled to check out the actual GFLClan ZE server. Wow you guys really know how to have fun and try hard. I'll definitely be coming around for good times when I'm not busy doing my jerb at SG. Also, feel free to join us for any of our ZE fun times. We may not always have as many great leaders and veterans as you guys, but when the tryhards come on (including a good amount of regulars that play here :p), you know it's gettin real. Edit: Also looks like you guys share a hate for Aesthetic much like us. xD
  18. What Rank Are You? __________________________________________ _______________________________ Current Rank - Gold Nova Highest Rank - Legendary Eagle Master Goal - To achieve Global Elite
  19. Yesterday, GFL eSports had our first scrimmage preparing for ESEA Season23. You can watch the full thing here; https://www.twitch.tv/gflkaizy/v/86491694 Current roster (FOR THIS GAME); kaizy chills crzy xure urban ; You can click the players names to view their steam profiles. We you guys support us! We're trying our best to get to the next level of counter:strike with GFL. Sincerely, Kenny "Kaizy" Tran
  20. Tell me what you think of this gun, I have a bone mask skin for it! YUM YUM aha XD
  21. I love Smokes and i feel like it would be nice and it would be nice for players to get out of a gun fight.
×