• GMod - What are you working on? February 2019 (#89)
    80 replies, posted
GMod - What are you working on? February 2019 (#89) Highlights from the previous thread @the_mactavish 's LED panels https://youtu.be/dtiTrCXum6o @Tenrys ' lockpick https://tenrys.pw/ShareX/2019/Jan/yOZV.webm @Zeh Matt 's procedural rooms https://youtu.be/7MaNiHJ-Whs @Extra 's fallout gamemode https://youtu.be/_N2tfIuPnwU
Once i was working on a bigger update for my radio addon and realized that this project got big enough for manual testing. I did some research for to automate testing in Lua and found Lunatest. Unfortunately it doesn't run in GMod out of the box, because it pure Lua made for CLI. To make it actually work I desided to write a wrapper, so you can use it ingame via the console. The biggest challenge was to not change the original Lunatest file, so it can be updated easier later. The wrapper also runs the tests in isolated environments to prevent any polluting of the global table. It ensures that the tests are started with a clean and defined environment, aswell. I had to use a lot of get/setfenv and other advanced Lua functionalities, which makes the code quite hacky to be honest. It's still work in progress, but I see a great potential for that side project. I think it could be the first testing framework that was made for GMod. I'm planning to release it as "GLunatest" when is stable. https://files.facepunch.com/forum/upload/110792/a65f43bb-c86e-4a28-8596-5e80a2927072/test_verbose.png https://files.facepunch.com/forum/upload/110792/0704663c-00eb-4aef-aa62-a5628b90f5fb/test_normal.png The to run it you enter glunatest [all|<addonname>] [cli parameters ...] into the console. The wrapper uses wrapper helpers to extend the testing environment. You can add assertion functions that Lunatest doesn't have without changing the original file. The framework already has a single json config file so you could manually add your addon's test suites, but I'm sure that's far from optimum, so I'm open for suggestions on that. {     "emulatorhelper": [         "glunatest/emulatorhelper/gmod.lua"     ],     "addons": [         {             "test": [                 "glunatest/tests/test-glunatest.lua",                 "glunatest/tests/test-gmod.lua"             ],             "name": "glunatest",             "emulatorhelper": []         }     ] } A typical test looks like this: -- require() is changed in testing environments local lunatest = require "lunatest" -- These also work -- local lunatest = require "glunatest" -- local lunatest = GLUNATEST -- local lunatest = _G.GLUNATEST function test_gamelib()     lunatest.assert_table(game) end function test_version()     lunatest.assert_number(VERSION) end function test_assert_vector()     lunatest.assert_vector(Vector())     lunatest.assert_vector(Vector(1, 2, 3)) end function test_assert_not_vector()     lunatest.assert_not_vector(nil)     lunatest.assert_not_vector(23)     lunatest.assert_not_vector("lapdesk")     lunatest.assert_not_vector(false)     lunatest.assert_not_vector(function () return 3 end)     lunatest.assert_not_vector({"1", "2", "3"})     lunatest.assert_not_vector({ foo=true, bar=true, baz=true })     lunatest.assert_not_vector(Angle())     lunatest.assert_not_vector(Matrix())     lunatest.assert_not_vector(Entity(1))     lunatest.assert_not_vector(NULL) end -- some more tests ... lunatest.run()
Porting my Gear assembly to the new matrix OOP system and playing around with my E2 automation control systems library.
After making the new texture-system for SF that supports live changes, I noted that a lot of map-creators have used outdoor materials indoors. So I made a new tool to easily remove or add map materials to the settings. https://www.youtube.com/watch?v=vXBB-aDS33s
I know this has been too many times already, a friend asked me to do something like this so I did it: https://www.youtube.com/watch?v=KULSVo8uuuM
Looks really amazing and detailed. Good job
Working on a fresh RP gamemode... Character Menu https://steamuserimages-a.akamaihd.net/ugc/941718808788097652/0D2B1C5040A4441A382F0ED239B6C7C31722ED11/ Skills Menu https://steamuserimages-a.akamaihd.net/ugc/941718808788097774/833467A3E8F12B032A52D18CB05085AFE83B2CE3/ Crafting Table https://steamuserimages-a.akamaihd.net/ugc/941718808788097446/6D0B61D81BDBD8B39092A13A5CF11A006D6A3052/ Group/Organization Menu https://steamuserimages-a.akamaihd.net/ugc/941718808788097883/C0409585FE036A53B5C28B59C259E379BA5D33D3/ Immersive Contraband Production https://steamuserimages-a.akamaihd.net/ugc/941718494137963100/2DF43751559134F216F94FF91758114FED6B8851/ Growing Tent https://steamuserimages-a.akamaihd.net/ugc/941718808788097217/41B0B0790FF8D4058FB7695B0F57EE942E047EFE/
Testing SNPCs doing different formations and responding to the player's commands. (The player is seen as the commander to the SNPCs): (Sorry for the bad video quality) https://www.youtube.com/watch?v=Zcqj7hYODWY
I order them to dab.
Reminds me of republic commando 3D HUD, you might want to use 2 models, the first one being used when equiping the mask and the second one without the glass to prevent the reflection that can be a lil annoying
The reflection is one of the reasons why I made it use a model instead of an overlay, although I will need make it no as reflective as it is right now. Second reason was that overlays don't get affected by light, so in a pitch black room, you could still see the mask overlay, which was just dumb.
Another test of SNPCs doing different formations, the number of people in the group is dynamic, which always people to have as many people as they want. A new following system can also be seen in the video, they keep the formation while following. https://www.youtube.com/watch?v=1ItV3ZenGvI
After finishing SF's new texture system, I'm now able to add "special" snow-textures. (Among sand, rain and any other type). I then created a default snow texture-list from DoD, HL2EP2 and TF2. https://files.facepunch.com/forum/upload/107119/cb8ecab0-72e6-452e-ba5a-4d32431a322e/snow-tex.gif The system also got a new hook, allowing people to add their own "content packs", among env_groundtexture, env_snowtexture, env_raintexture, env_sandtexture for map-creators. It also supports add/remove textures in the settings and updates any changes live to the clients.
Re-coded my inventory from scratch up, old one wasn't up to par. You can enable/disable each rarity, sort by "unsorted" (where users can drag it around like they want), alphabetically, worst to best, or best to worst, plus you can search by name. https://lolihaven.org/VO8pj For the context menu it's just a mini version of the big inventory, all functionality besides filters are there + the ability to drag things to drop/equip (this can be done by pressing the items in the big and small one as well) https://streamable.com/jfz8o Still work in progress, some things like icons and indefinite article management is missing.
My Valentine's Day gift for the GMod community is here https://steamcommunity.com/sharedfiles/filedetails/?id=1655753632 Complete with brain melting launch trailer!!! https://www.youtube.com/watch?v=czbWxdybEjc
oh good god why also missed opportunity about posting it on aprils fools
Been working on a painting prototype today! https://www.youtube.com/watch?v=OV_APrW_LOs Video is using a Leap Motion Controller to track my hand thanks to this wrapper. You can change the post process applied using the numpad (I recommend dabbing the keys with your brush to really get into the artist roleplay) It might be hard to see in the video but I'm also dividing the screen and tracing to find contents in the hopes of the code having a rough understanding of what is being painted Source (also works with cursor input for the viewers at home): https://github.com/johnjoemcbob/GModMatthewPainting
Decided to try something crazy, surprised it didn't come out as bad as I was expecting https://files.facepunch.com/forum/upload/113610/5158f1b5-dafc-4a97-82bc-753773cbc8b6/image.png Right now it tells the time on your PC, but I could easily hook it into a day/night addon. Only thing I need to figure out now is how to draw a good strap that'll work for most drawing cases without looking too weird.
This would be bamf if you could hold a key or assign a Mouse3 button or something to actually look down at your watch, and if you had a model with sleeves pushed up, or an animation to push the sleeve up. That would be wild.
Working on making weather-functions more streamline and had an idea for the new function Weather:OnGroundWalk(ent). Sadly it works out from the EmitSound hook and can be a bit unreliable. But it is the only way I can detect most NPC's footstep. https://www.youtube.com/watch?v=UYBBmHSv3lk&t=26s Disclaimer; I got the vFire addon installed. The fire effect itself is not mine.
Well, Speaking of dancing... https://www.youtube.com/watch?v=JKsUhXRzSdI
Working on a crafting system where you can upgrade your weapons by crafting with better materials, pretty rough UI so far https://streamable.com/l1c5g
Please don't mind the weapons stats thing being totally off, visual glitch. Had no idea what to do in regards to the crafting "animation", I just hope that wont give anyone a seizure https://streamable.com/062tb
Icons are placeholders https://streamable.com/rfyku
Working on dynamic explosions, procedural animations, every explosion is unique/looks different, comes in any continuous size, got a system in place that catches explosions, interprets their type/magnitude/damage from scavenged information obtained through a variety of hooks, and calls them in - so that any entity that spawns an explosion will be naturally supported Working on several explosion 'types', such as oil explosions, gas explosions, default explosions, etc. (Sorry about the video sizes, wish thered be a way to make embeds smaller) https://gfycat.com/EmptyWhimsicalCrossbill https://gfycat.com/OldfashionedIgnorantAbalone https://gfycat.com/FilthyOrderlyDonkey
New Skin Rendering Method. Very FPS friendly. https://files.facepunch.com/forum/upload/58256/26774d47-c900-497d-bfc5-dbe00bf810a1/Garry's Mod (x64) 2019-03-03 오후 4_55_29.mp4
I just found super awesome VMT shaders for skins here is some new update https://files.facepunch.com/forum/upload/58256/4f1b8143-290f-4a93-ad32-81410fbbe43d/Garry's Mod (x64) 2019-03-05 오후 12_44_27.mp4 https://files.facepunch.com/forum/upload/58256/78e7e131-67e7-4b9c-9a05-d846baa73067/Garry's Mod (x64) 2019-03-04 오후 2_53_08.mp4
It must've been about a decade ago I had an idea to make entities that repel each other, to try particle-based fluid simulation, but I never got around to it until now. I don't know why I put it off so long, I think I figured it was just impossible to get any decent result, but it hardly took any time to make it happen. It wasn't until after I started recording this that I realized, with the right equation, filling up a contained plane with these and then adding even more created a decent result. I guess next would be stretching a water texture between the "floating" points, and repelling anything else sat on top, but I don't have more time at the moment. https://www.youtube.com/watch?v=l9eZzI2KD8k code: https://pastebin.com/JhRUWg7s save to Steam\steamapps\common\GarrysMod\garrysmod\lua\entities\sent_repel.lua
Sorry, you need to Log In to post a reply to this thread.