• GMod - What are you working on? July 2018 (#82)
    76 replies, posted
https://www.youtube.com/watch?v=xXYhdz9Du4E
https://traps.thigh-high.club/qk0vhk.mp4 switched to projected textures for laser dots, so that they blend correctly and interact nicely with normals
Grabbed some art off OpenGameArt and spent some time with derma skinning. I really wish the wiki had some better documentation on how this stuff works, I've mostly relied on making the elements with gcompute, and inspecting their fields. https://files.facepunch.com/forum/upload/243318/daa2d640-9d54-44ce-bbda-936845778fca/derma_1.PNG
And another: https://files.facepunch.com/forum/upload/243318/a3ddc137-7709-421a-a41e-b8c00d036113/derma_2.PNG
Is it supposed to look so pixelated?
Yeah, I think so. That's how the components came: https://files.facepunch.com/forum/upload/243318/a96a1261-1165-42d0-bf66-8fba6db3ee12/golden_ui.png
working on a modded physgun to create some more interesting prop spawning mechanics https://youtu.be/rKgF1XXdMnY
Wow, that's a super creative way to spawn things! Very nice.
https://www.youtube.com/watch?v=-k9DPMfBkMw Mutant Wookiee. Added support for different climb animations based on height. Still haven't fixed orientation, but thus far it's working very nicely. Jumping seems to work without any intervention on my end - So long as the navmesh is set up properly. I'd be showing off the deathtroopers, but I need to snag the l4d infected animations first.
I guess you're holding Right Click to spawn/move it around and will use left click to move it after it spawned right?
thanks! yees sire, tried to streamline as much as possible
Have not posted anything recently, so here is a small preview from one of the new levels I was working on (also, mind the volume): https://my.mixtape.moe/ozrify.mp4
I'm gonna be needing that song name, thanks.
Working on some animated camos now that I've worked out how to do it properly (Shoutout to rebel who gave me some code that I never actually ended up using for it) Fire (This was the first one I made more so as a test, so looks a bit shit) Retrowave Honeycomb LSD Water Cartoon Future 70's
Making a thing so I can do something like this.. #include <GarrysMod/Lua/Interface.h> #include <GarrysMod/Lua/LuaValue.h> #include <GarrysMod/Lua/LuaObject.h> // more to come from this doodle using namespace GarrysMod::Lua; int do_garbage(lua_State *state) { // implicit cast to bool if (LuaValue::Pop(state, 1)) { // implicit cast to map std::map<LuaValue, LuaValue> garbage_ops = LuaValue::Pop(state, 2); } } GitHub
Well. This is going to be minimalistic HUD for darkrp gamemode for sale on gmodstore. Or realesed for free, if they don't apply my work . 40% already done. https://files.facepunch.com/forum/upload/134299/080aa582-aded-43a8-9811-77480a2d2e66/20180719035016_1.jpg https://files.facepunch.com/forum/upload/134299/3a9258da-4d92-4e4e-83f1-35be34a325d1/Retrime_HUD.jpg
https://soundcloud.com/jet-set-trash/irving-force-total-superhighway-incursion
Now I can write this #include <GarrysMod/Lua/Interface.h> #include <GarrysMod/Lua/LuaValue.h> #include <GarrysMod/Lua/LuaObject.h> #include <GarrysMod/Lua/LuaEvent.h> // more fun here using namespace GarrysMod::Lua; class TestObject : public LuaObject<239, TestObject> { private: std::string _member; public: std::string name() override { return "TestObject"; } public: TestObject() : LuaObject() { AddGetter("member", get_member); AddSetter("member", set_member); AddMethod("do_shit", do_shit); } public: static int do_shit(lua_State *state) { auto obj = Pop(state, 1); // do the shit here return 0; } static int get_member(lua_State *state) { auto obj = Pop(state, 1); return LuaValue::Push(state, obj->_member); } static int set_member(lua_State *state) { auto obj = Pop(state, 1); auto value = LuaValue::Pop(state, 2); if (value.type() == Type::STRING) { // need to figure this out... :I std::string _ = value; obj->_member = _; } return 0; } }; // TestObject int make_test_obj(lua_State *state) { return TestObject::Make()->Push(state); } GMOD_MODULE_OPEN() { LUA->PushSpecial(SPECIAL_GLOB); LUA->CreateTable(); LUA->PushCFunction(make_test_obj); LUA->SetField(-2, "make_test"); LUA->SetField(-2, "gloo"); LUA->Pop(); return 0; } GMOD_MODULE_CLOSE() { return 0; } And in lua do this require "gloo_test" local obj = gloo.make_test() obj.member = "this is a string" print(obj) -- outputs "TestObject" print(obj.member) -- outputs "this is a string" obj:do_shit() -- does nothing because examples are hard I'm working on the LuaEvent interface that will allow you to write something like this in cpp class Example // LuaObject stuff { public: LuaEvent::shared_t event; public: void threaded_method() { event->Emit("anything", "you", "want", 69, true, false); } public: static int get_event(lua_State *state) { auto obj = Pop(state, 1) return obj->event->Push(state); } }; And be able to do this in lua obj.event:on(function(...) do_stuff_with_params(...) end) Only caveat; C++17..
What do y'all think of using this style of WAYWO board for this thread? I'm sure there could be a sticky feature added for keeping monthly highlights at the top of the forum, but it seems like a better way to see new projects and keep up with long-term updates. On the other hand, it would remove the open-styled discussion of a singular thread, though if the WAYWO is active enough the monthly update thread could double as a general discussion. There won't be any change in the near future either way, but I just wanted to gauge the general interest.
On one hand, this sounds like a good idea and it gives each project sort of a higher status than the current single-thread way. On the other hand, my phone does not like that page at all. It can just about start to load it, then freeze. I think this is down to there being way too fucking many threads on one page, with too many of them having a youtube embed, etc.
I wouldn't be against the idea, but wasn't one of the original reasons we stuck to this thread because people felt they would post less content, as posting a thread is kind of a "big deal"? I remember reading it somewhere in forum discussion.
I think the idea is to create a situation where posting a thread isn't a big deal anymore.
Potentially fragmenting an already small community seems like a bad idea to me. Also that style just flat outt looks horrible imo.
I've replicated the stick-up system from GTA. https://imgur.com/a/Vn5p1GO
Hi, me again. Some stuff happened, but it's happening less now. I've made two examples to explain render.SetStencilWriteMask and render.SetStencilTestMask and two practical examples: Stencils in 2D and Stencils using 3D2D. I think I've covered everything basic and everything else should be easy enough to work out, but is there anything that anyone feels could do with more explanation? I'll make some toy examples for each of the constants at some point. https://files.facepunch.com/forum/upload/110874/e6d057cf-ae6c-4c2e-9778-1e5a475b0899/gm_construct0105.jpg
Is there an example for stuff like hollowing out a part of the world and filling the inside with another material? Say a bomb blows up and the ground is hollow with dirt inside.
I don't have one, no. I can knock something together - but you need to bear in mind that making an actual physical hole is rather more complicated (and I don't know how to do it)
Returning to my ReBase project. Here's new functionality for my base gamemode: Glua RunOnDomain (just another way to separate code between client, shared, and server) IncludeFiles (replaces include and AddCSLuaFile) debug Timestamp (code format dictated by debug_timestamp_format ConVar) Print (prints with timestamp) Color New GetIntermediateValues (necessary for all of the following get/set/rotate functions) GetHue SetHue RotateHue GetSaturation SetSaturation GetLightness SetLightness GetLuminance SetLuminance GetHsl SetHsl GetHsv SetHsv Invert Blend __add __sub __mul __div Math GetMax(table) GetMin(table) I'm hoping to work on Vectors and Angles next. Also working on a website: https://files.facepunch.com/forum/upload/107096/b9cccc9a-3f97-40ef-9ff8-926d9dc4394c/image.png I'm using purple to indicate shared functionality.
I'm bored so I have been messing around with jiggleboned stuff a bit https://www.youtube.com/watch?v=970lruEYZ2g
I snipped my last post because I redid the Color class implementation, except with caching. Here's the new list of Color functions in my base gamemode titled ReBase: Color:New() Color:__tostring Color:__add Color:__sub Color:__mul Color:__div Color:GetScales() - Caches and returns RGB values so that they are scaled from 0-1. Used by Color:GetMinMax() and Color:GetHue(). Color:GetMinMax() - Caches and returns lowest and highest scaled RGB value Color:GetChroma() - Caches and returns max - min. Used by Color:GetHue() and Color:GetSaturation() Color:GetHue() Color:GetSaturation() Color:GetLightness() Color:GetColorInformation() - mainly used for debugging my color class implementation Color:ClearCache() - this will be used by all setter functions since the cache will no longer be valid for new colors
Sorry, you need to Log In to post a reply to this thread.