Porting Black Mesa: Source weapons to gmod, so far the glock and MP5 are fully functional
[t]http://puu.sh/16RWv[/t]
[t]http://puu.sh/16RWA[/t]
[QUOTE=Goz3rr;37733644]Porting Black Mesa: Source weapons to gmod, so far the glock and MP5 are fully functional
[t]http://puu.sh/16RWv[/t]
[t]http://puu.sh/16RWA[/t][/QUOTE]
If you can manage to fully port the gluon gun, that would be pretty awesome.
[QUOTE=vexx21322;37733675]If you can manage to fully port the gluon gun, that would be pretty awesome.[/QUOTE]
Still need to complete BMS again, to refresh my mind, but the SMG has the one click = 3 shots, hold the trigger = full auto like in the game
[QUOTE=Chessnut;37731979]There seems to be quite some empty space in the second one.[/QUOTE]
Not sure what to do with it all. Might increase the text sizes a bit and maybe add a spinny model preview of just the hat, then make the pane much thinner.
You could slap in a zoom in on the head next to the whole player. Pointless, But it would fill it out a bit at least.
[QUOTE=Cushie;37729994]I dont think it can be done with just the webserver. The client will try to request all files on the resource list whether the webserver likes it or not. Even if you deny the requests for certain files every player would still have to go through and attempt to download each file every time they join. The only way to do it would be if it was possible to change the list of needed resources as they are sent to the player when they connect, so they don't attempt to download unwanted files.
.obj files are also just text files, it must read them from a URL then parse them.[/QUOTE]
if you're interested you can take a look at it here:
[url]http://code.google.com/p/gmodcapsadmin/source/browse/trunk/addons/pac3/lua/pac3/core/client/libraries/urlmat.lua[/url]
[url]http://code.google.com/p/gmodcapsadmin/source/browse/trunk/addons/pac3/lua/pac3/core/client/libraries/urlobj.lua[/url]
Still wip ish. The content is cached in memory only. You could extend this and store the obj files as txt on the client combined with util.CRC to check against your webserver. This obviously doesn't work that well when you're getting obj files from dropbox and such. The obj drawback is that you can only make static models. Dynamic may be possible but then you'd have to draw the model manually with lua which could be slow.
To be more specific about materials, I'm caching the html textures. I can safely remove the html panel after it's loaded and the texture would still exist and work. But there is no alpha channel. There's no alpha channel in gmod 13 either last time I tested it.
I don't know how you would store ITexture to disk though..
[QUOTE=CapsAdmin;37737347]I don't know how you would store ITexture to disk though..[/QUOTE]
Aaaand... That is what I am working on!
There is an early test result, the code needs a lot of cleanup, but this is a saved material, rendered with a DImage:
[IMG]https://dl.dropbox.com/u/7659139/Facepunch/wip_save.png[/IMG]
[editline]20th September 2012[/editline]
( Turned out to be less code than I tought :v: )
There is what I used:
[lua]
png = {}
png.cModel = ClientsideModel( "models/props_borealis/bluebarrel001.mdl", RENDERGROUP_BOTH )
png.cModel:SetNoDraw( true )
png.cIcon = vgui.Create( "ModelImage" )
png.cIcon:SetVisible( false )
function png.RenderTo( imageID, w, h, func )
png.cIcon:SetSize( w, h )
png.cIcon:SetModel( "_lua/" .. imageID )
function png.cModel.RenderOverride()
cam.Start2D()
func()
cam.End2D()
end
png.cIcon:RebuildSpawnIconEx( {
ent = png.cModel,
cam_pos = Vector( 0, 0, 0 ),
cam_ang = Angle( 0, 0, 0 ),
cam_fov = 90
} )
end
[/lua]
Basically, I am using an exploit in garrys spawnicon rendering. This expoit is the existence of ModelImage:RenderSpawniconEx( table ),
and that the ModelImage allows not existing models to be set as the path. The parameters of the mentioned method are not documented anywhere,
but I managed to find a few of them, by digging into garrys spawnmenu code:
[code]
.ent - Entity
.cam_pos - Vector
.cam_angle - Angle
.cam_fov - number
[/code]
The .ent paramerer is exploitable. If you override its RenderOverride function, you basically can draw ANYTHING on it using cam.Start2D, cam.Start3D.
... except RenderView, that crashes the game. ( And results is strange assertation failed minidumps, btw :v: )
The second part, is that you can set the model of the spawnicon to anything you want, if you call the RenderSpawnIconEx, it will be ignored, except at the
filename decision, what allows you to save your PNG image everywhere in the /materials/spawnicons folder.
The only challange left, is to find the file created, since it places some funky suffixes at the end, based on the size of the spawnicon. ( name100x100.png, name128.png, etc.. )
This can be solved by overriding the "SpawniconGenerated" hook, that will tell you the model name, and the generated texture name too.
MDave, although you said the RenderView crashes your game.. do you have Multi Core rendering enabled? That'll crash you.
It bugged me the other day for a bit.
Also that's completely winner by the way.
Well, it is strange. If I have multicore rendering, the game will lock up, but wont crash.
With Multicore Rendering disabed, it will crash instantly.
Not really working on, but "dreaming" of (:v:) custom shaders:
[video=youtube;Sq6AsYsfh4Q]http://www.youtube.com/watch?v=Sq6AsYsfh4Q&hd=1[/video]
[QUOTE=Cushie;37729994]I dont think it can be done with just the webserver. The client will try to request all files on the resource list whether the webserver likes it or not. Even if you deny the requests for certain files every player would still have to go through and attempt to download each file every time they join. The only way to do it would be if it was possible to change the list of needed resources as they are sent to the player when they connect, so they don't attempt to download unwanted files.
.obj files are also just text files, it must read them from a URL then parse them.[/QUOTE]
It'd be somewhat easy. You could even use sql to manage the files the player downloads. Just have a clever setup on the webserver to redirect all requests from a folder to a script that will check the sql. If it's in there, give the file, otherwise return a 404 error.
[QUOTE=Map in a box;37751071]It'd be somewhat easy. You could even use sql to manage the files the player downloads. Just have a clever setup on the webserver to redirect all requests from a folder to a script that will check the sql. If it's in there, give the file, otherwise return a 404 error.[/QUOTE]
My original point was that even if you give it a 404 error, it will still attempt to download all the files, just they will appear to download instantly.
So if you have 2000 files and 500 are on join, the other 1500 are with this system, if someone didnt opt to download them, they would have to go through and attempt to download all 1500 files every time they join, boosting loading time by 1-2 mins.
[QUOTE=Goz3rr;37733773]Still need to complete BMS again, to refresh my mind, but the SMG has the one click = 3 shots, hold the trigger = full auto like in the game[/QUOTE]
I completed it and heres what i have noted:
-The Gauss Gun batteries (spinners) only spin on the charging animations, and stops when shot in a random position (with use of poseparameters)
-The Gluon is the same thing from HL1, altrough, secondary fire triggers fiddle animations
-Glock is like the HL2 Pistol
-Shotgun is like the HL2 one
-Tripmines, Grenades and Snarks works the same way as the old ones.
-Crossbow and 357 have different aim methods (needs a CVar to toggle between oldschool zoom or RT lens/ironsights on them)
-Crowbar works the same way as the old one.
I think thats it, incase something its wrong, i think someone will correct me.
[QUOTE=Cushie;37752315]My original point was that even if you give it a 404 error, it will still attempt to download all the files, just they will appear to download instantly.
So if you have 2000 files and 500 are on join, the other 1500 are with this system, if someone didnt opt to download them, they would have to go through and attempt to download all 1500 files every time they join, boosting loading time by 1-2 mins.[/QUOTE]
Not necessarily. You wouldn't block a shit ton of files with it.
[b]Speed Booster[/b] [i]Soon to include[sp]Shinesparking![/sp][/i] ([b]Speed boost may vary![/b]) (It is loud and unexpecting!)
[vid]http://dl.dropbox.com/u/51054514/Garry's%20Mod/webm/%5BSpeed%20Booster%20v0.0.1%5D%20%5B9.21.12%5D.webm[/vid]
I've been influenced by the recent addiction to playing Metroid: Zero Mission and Fusion (once again, for >9000th time)[sp], and the reoccurring thought that I cannot Shinespark through people in the hallways[/sp]
There's a bit of a complication with how I wanted it to activate, how long it'll take to activate it, and how fast to modify the speed.
In Super Metroid, holding down the Run button triggered the check to activate it.
In Zero Mission and Fusion, it was just to keep running to activate it.
So I worked my magic to get it to use all 3 of them at the user's choice. The default is set to 'zm' (Zero Mission) style, which is keep running. I just need sounds from Fusion and Super Metroid.
Shinesparking isn't implemented yet. I'm going to save that for tomorrow (or later).
[editline]11:39 PM[/editline]
Uploaded to the [URL="http://steamcommunity.com/sharedfiles/filedetails/?id=98101833"]Workshop[/URL] @ [URL="http://steamcommunity.com/sharedfiles/filedetails/?id=98101833"]http://steamcommunity.com/sharedfiles/filedetails/?id=98101833[/URL]
[editline]12:45 AM[/editline]
Worked on Shinesparking, and...
[vid]http://dl.dropbox.com/u/51054514/Garry's%20Mod/webm/%5BSpeed%20Booster%20v0.0.2%5D%20%5B9.22.12%5D.webm[/vid]
my spaghetti, shit, and jism mixed together as they propelled me into outerspace and I became a bear space explorer.
'ShouldCollide()' isn't reliable...
Loud alert please :v:
If you're gagged AND muted on a server, chances are you aren't wanted.
[vid]http://puu.sh/17s5E[/vid]
[sup]Recording by BlackOps[/sup]
(:v:)
I was looking through different sequences to animate the hat preview box with, got a bit carried away when I found this one. Doesnt look like the model is positioned properly (At least I think so from this angle), but it is. Can spin around for better view of the hat.
[img]http://puu.sh/17wcN[/img]
The arm is slightly screwed up but that is an issue with the sequence so I cant do much about it.
[img]http://puu.sh/17wOq[/img]
I got a little upset at the (ugly) Fretta map voting system......
[t]http://puu.sh/17xKh[/t]
Ignore the whitespace on the right, when displayed in-game it won't be there
[editline]22nd September 2012[/editline]
version 2.0 (thanks monkey and spencer!)
[t]http://puu.sh/17zwa[/t]
waited 5 minutes for it to export and find out it's flawed. Tried making a screen capture in gmod.
[img]http://puu.sh/17JOI[/img]
Two things changed to the 'Speed Booster' addon.
A) I added a little check to see if your Z is the same after a second.
B) Added 'Fusion' and 'Super Metroid' style Speed Boosters (SM requires to be running). Fusion sounds were hard to get, as there's no quiet place to get the sounds, while finding the Zero Mission charge sound was hard because the just mentioned reason. At least ZSNES supports disabling the channels music were playing on.
[editline]9.23.2012 @ 2:49PM[/editline]
Tweaked up some sound loops, decreased the time required to check if the player's Z coordinate is the same as before (meaning if they are stuck going up and up at the skybox, it'll disable), and also added some "hooks" per variant of the Speed Booster.
[vid]http://dl.dropbox.com/u/51054514/Garry's%20Mod/webm/%5BSpeed%20Booster%20v0.0.2%5D%20%5B9.23.12%5D.webm[/vid]
[b]Speed Booster in [sp]even more[/sp] action.[/b] ([i]'loud alert'[/i])
I should probably disable the Speed Booster when the player's dead.
[del]Obliterating NPC's is next on my agenda. As soon as I remember how to make explosions again or successfully kill NPC's again due to the lack of an actual 'Kill()' function.[/del]
[editline]4:25PM[/editline]
Disintegration is now included!
[vid]http://dl.dropbox.com/u/51054514/Garry's%20Mod/webm/%5BSpeed%20Booster%20v0.0.3a%5D%20%5B9.23.12%5D.webm[/vid]
'ShouldCollide()' is horrendous.
[QUOTE=Mr. Quiggles;37769146]Two things changed to the 'Speed Booster' addon.
A) I added a little check to see if your Z is the same after a second.
B) Added 'Fusion' and 'Super Metroid' style Speed Boosters (SM requires to be running). Fusion sounds were hard to get, as there's no quiet place to get the sounds, while finding the Zero Mission charge sound was hard because the just mentioned reason. At least ZSNES supports disabling the channels music were playing on.
[editline]9.23.2012 @ 2:49PM[/editline]
Tweaked up some sound loops, decreased the time required to check if the player's Z coordinate is the same as before (meaning if they are stuck going up and up at the skybox, it'll disable), and also added some "hooks" per variate of the Speed Booster.
[vid]http://dl.dropbox.com/u/51054514/Garry's%20Mod/webm/%5BSpeed%20Booster%20v0.0.2%5D%20%5B9.23.12%5D.webm[/vid]
[b]Speed Booster in [sp]even more[/sp] action.[/b] ([i]'loud alert'[/i])
I should probably disable the Speed Booster when the player's dead.
[del]Obliterating NPC's is next on my agenda. As soon as I remember how to make explosions again or successfully kill NPC's again due to the lack of an actual 'Kill()' function.[/del]
[editline]4:25PM[/editline]
Disintegration is now included!
[vid]http://dl.dropbox.com/u/51054514/Garry's%20Mod/webm/%5BSpeed%20Booster%20v0.0.3a%5D%20%5B9.23.12%5D.webm[/vid]
'ShouldCollide()' is horrendous.[/QUOTE]
You really shouldn't be using ShouldCollide for anything but telling the game which objects are and aren't permitted to collide, it's not made for collision callbacks, which is what I'm assuming you're attempting from watching the npc dissolve as you approached it. It's called whenever the game wants to know if two objects are capable of colliding, not necessarily when there is a collision that needs to be resolved. My only suggestion is the use of trace hulls, maybe using ShouldCollide solely to prevent collisions that would cause the player to hit the object and stop moving. Enemies should also explode instead of dissolving, which would be both more satisfying and truer to the source material.
I've tried doing this years ago and it was a bitch to figure out how to deal with the player crashing through stuff, so hopefully you'll have better luck.
[QUOTE=Ghor;37776806]-snip of helpful content-[/QUOTE]
I figured that's what the old wiki meant by "[i]simply to poll if they should collide when they are about to touch each other.[/i]" I was going to use an alternative since I'm being too reliant on it, mostly for stopping the player when Shinesparking. Exploding was an option, but it is explosions. It'll hurt the player in the process, more/less that deafening whine.
[QUOTE=Ghor;37776806]My only suggestion is the use of trace hulls[/QUOTE]
Hm. I guess it would be better than using something complex like calling a check to see if a player is near an entity by using some ugly math.
[editline]9:05 PM[/editline]
Wow. I just realized 'Ghor' is from Prime 3.
in addition don't have dynamically changing collisions in the hook or eventually the server physics will break, needing a relaunch of the server
[QUOTE=Mr. Quiggles;37779278]Exploding was an option, but it is explosions. It'll hurt the player in the process, more/less that deafening whine.[/QUOTE]
[code]
local ef = EffectData()
ef:SetOrigin(roadkill:GetPos()+roadkill:OBBCenter())
util.Effect("Explosion", ef)
[/code]
Damageless explosion. Kill the entity and dispatch the explosion effect.
I also tried taking another crack at it, first disabling player collisions with enemies, then parenting an entity to the player that copies the bbox and does damage on touched NPCs seemed to work alright at first. At higher speeds, though, you start to run straight through enemies without doing any damage, which tells me the touch event doesn't take velocity into account.
I give up on having a constant Z value horizontal Shinespark without having it look horrible. Leaving it like it is in Other M.
[vid]http://dl.dropbox.com/u/51054514/Garry's%20Mod/webm/rogue timer.webm[/vid]
[del]That rogue timer that will not [b][i]die[/i][/b] is raping my sanity and mentality.[/del] Fixed it. I'm going to bed. I'm tired, and I cannot continue working with the current state my psyche is in
[vid]http://dl.dropbox.com/u/51054514/Garry's%20Mod/webm/%5BSpeed%20Booster%20v0.0.3a%5D%20[9.24.12%5D.webm[/vid]
[b]Recoded; Optimized; Less sound [sp]overlaying[/sp]; No fucking timers going rogue.[/b]
[b]Next on my agenda:[/b] Obliteration. (I'll go back to horizontal Shinespark later, if I just keep setting the Z value each tick, it'll eventually put you in the ground.)
Workshop is updated to the current build of it.
You should just use MOVETYPE_FLY, player:Freeze(), and set a velocity if you want to do a shinespark that doesn't get mucked up by gravity.
[IMG]http://i.imgur.com/5SLmJ.jpg[/IMG]
The trace hull method also seems to be a clear winner over the touch method. It works by performing tracehulls in SetupMove or Move with a while loop that keeps testing the area that's velocity * FrameTime() ahead of the player and adding hit objects to the trace's filter until all possible objects have been exhausted and the trace only hits NULL. There seems to be some problem that causes you to come to a total halt when you hit an uphill enemy but I'm sure that further development would see that sorted out. Applying force correctly through the damageinfo object also seems to have the nice effect of kicking obstacle props out of your way without slowing you down.
[QUOTE=Banana Lord.;37760586]I got a little upset at the (ugly) Fretta map voting system......
[editline]22nd September 2012[/editline]
version 2.0 (thanks monkey and spencer!)
[t]http://puu.sh/17zwa[/t][/QUOTE]
I got the bottom of the last page so I'm posting this again. Also, I was wondering if you guys think doing away with proper 800x600 support is a bad idea (there will be a legacy map vote button!).
and by "do away with proper 800x600 support" I mean I'm not going to sit here and fight with how the page is designed to support the tiny ass screens, they'll just have to scroll, endlessly
Why do people honestly always think that others just skip the last post. It's a forum, and even then this thread rarely gets content so I'm sure people scavenge for whatever content they can get. It wouldn't surprise me if they do it just for attention though.
[QUOTE=Map in a box;37789637]Why do people honestly always think that others just skip the last post. It's a forum, and even then this thread rarely gets content so I'm sure people scavenge for whatever content they can get. It wouldn't surprise me if they do it just for attention though.[/QUOTE]
I didn't ask the question in the old post ;)
Sorry, you need to Log In to post a reply to this thread.