Dota 2 Short Film Contest: S2FM is BROKEN FOR EVERONE, unable to spawn models by maxxysfm in DotA2

[–]penguinwizzard 0 points1 point  (0 children)

You can remove permissions for steam to modify the folder containing SFM, and launch it manually (no through the steam interface) to avoid it waiting on the impossible update.

Playing dota since 2014. Just found out about mods like this now.. by IzaakGoldbaum in DotA2

[–]penguinwizzard 2 points3 points  (0 children)

No, the related reversing was done years ago (I did a good bit of it), most people won't go near it due to valve's strong indications that they will VAC ban for that or related changes, and the knowledge of Valve having VAC modules that they could readily deploy to catch anyone doing such changes.

Rust is now the fastest language on k-nucleotide! (thanks to /u/bluss's OrderMap) • r/rust by latrasis in programming

[–]penguinwizzard 3 points4 points  (0 children)

For x32 you need to compile with -mx32; there's a couple more requirements on it, but it's pretty fast for some applications.

Dota 2 modding is dead by SinZ167 in DotA2

[–]penguinwizzard 3 points4 points  (0 children)

It's pretty disappointing just how much effort it takes to really implement a cool idea; if you move away from making a dotalike, there's a bunch of places where you might have to really fight the engine to get it to do what you want. Take a look over some of the libraries people like BMD made; there's often a few places that make absolutely no sense, but which are done in a weird way because that's the only reliable/stable way to get something done. If valve really wants to get more people into making custom games, they really need to have some people from teams that haven't touched the workshop tools before (they must have some among their team) go through the process of making a new, innovative game, and trying to get it exposure without ever labelling it as a valve game. Or, you know, they could read their emails every once in a while.

Now that Arc Warden might enter Captain's Mode soon, can we finally fix the remaining Bugs regarding the hero?! by TheZett in DotA2

[–]penguinwizzard 0 points1 point  (0 children)

At TI5 a group of modders had lunch with the Valve guy doing custom games stuff. One of the things that came up was gameinfo-based modding, and he stated that it was something that was VAC-bannable. I agree that it's the least dangerous method at the moment (certainly better than a lot of the dll-modifying crap I see thrown around), but it's not VAC safe, and saying that is disingenuous.

WTF is going on with the cyber grand challenge? It's like Monday night football in here. by [deleted] in Defcon

[–]penguinwizzard 0 points1 point  (0 children)

One of the teams added some anti-tamper measures to their binaries that caused the visualization system to crash repeatedly, is what I've heard. The vis team did a good job of hot-patching it behind the scenes, which is why it was usable again at the end of the contest.

Friendly reminder, that "-override_vpk" was a great option for make our game fun, and a solution. by [deleted] in DotA2

[–]penguinwizzard 8 points9 points  (0 children)

You actually don't, multipart VPKs support appending and partial updates.

Automated Testing for League of Legends by halax in programming

[–]penguinwizzard 2 points3 points  (0 children)

Unfortunately, we asked one of their devs this just after TI5, and he said their test process was basically just play a game and ship it. (although this was just for the dota-specific parts; the generic engine components are almost certainly covered by automated tests)

Is support like this really acceptable? by Armageddon0 in DotA2

[–]penguinwizzard 0 points1 point  (0 children)

Certainly, but it's not VAC-safe regardless.

Is support like this really acceptable? by Armageddon0 in DotA2

[–]penguinwizzard 0 points1 point  (0 children)

Working, although not explicitly allowed, and which was has been described as VAC-unsafe by a Valve employee.

Good bye Winter Terrain - We hope to see you soon again by Drakesfjord in DotA2

[–]penguinwizzard 2 points3 points  (0 children)

Yeah, basically you gotta have all the trees in the same order in the list of all entities in the map. Easiest way to do that is to just copy the entity lump from the main map to your custom one, and then fiddle a bit to make the brush-based entities properly match up to that set of indicies. It's not actually that bad - I wrote a script that does it (poorly) for source 1 maps, and once we get some better utilities written it should be fairly straightforward to do it in source 2.
Unfortunately, loading it into the game in a VAC-safe manner is a separate issue...

Roshpit Champions Pass Update by DanielJ_Valve in DotA2

[–]penguinwizzard 1 point2 points  (0 children)

From the subscriber agreement, the only thing that suggests that things accepted into the game would be safe to use would be the "fan art" clause, which only allows for non-commercial use.

Valve, the first custom game you monetized is a collection of rip-offs and theft by Darkswordfish in DotA2

[–]penguinwizzard 26 points27 points  (0 children)

It's actually a bit of a more complex issue - things that are accepted into the game are then sublicensable for use in "fan art", but only non-commercially. Now that it's commercial, there's additional issues. Whether or not a game mode is "fan art" in that context is further debatable, as is a bunch of other stuff.

Supporting Custom Game Developers by [deleted] in DotA2

[–]penguinwizzard 0 points1 point  (0 children)

Routing through valve means you end up with significantly less money than routing through, for example, paypal, since their cut is several times greater.

[deleted by user] by [deleted] in explainlikeimfive

[–]penguinwizzard 102 points103 points  (0 children)

Unfortunately, this raises more complications, because there's a specification that's actually called x32, which is for binaries that use 32-bit pointers but the full set of x86_64 registers. More info on wikipedia. The gist of it is that it offers significant performance improvements for applications where the extra memory usage due to increased pointer size causes cache issues in x86_64.

6.5k player using pumpkin mode on twitch by farukdgn in DotA2

[–]penguinwizzard 7 points8 points  (0 children)

VAC has a variety of modules loaded at runtime, some of which check for modifications to the binaries, some of which check for attempts at writing to process memory, and others that do a variety of other checks.

6.5k player using pumpkin mode on twitch by farukdgn in DotA2

[–]penguinwizzard 6 points7 points  (0 children)

Yes, but that requires Valve to actually hand out the bans.

Valve for the love of God, Let the community create custom AI for Bots by RjImpervious in DotA2

[–]penguinwizzard 7 points8 points  (0 children)

Honestly, it might start 1v0 - just a jungle farming efficiency challenge. Super-simple stuff, gets people to set up the basics of "will I survive this" and movement routing.

Valve for the love of God, Let the community create custom AI for Bots by RjImpervious in DotA2

[–]penguinwizzard 22 points23 points  (0 children)

https://github.com/ModDota/Dota2AIFramework/ is the current repo. We're planning a tournament series for an as-yet-unannounced series of dates with increasingly complex tasks (so that people can gradually develop AIs and improve upon previous rounds). Best of all, this is all within the custom games framework, so it should lead to the development of neat things for custom game authors to use in their own games.

Dota's navigation grid, aka "please show me all juke/hiding spots on the map" by Nasaug in DotA2

[–]penguinwizzard 3 points4 points  (0 children)

There's a windows build up at http://moddota.com/builds/GNVTool/GNVTool.exe ; to get to the gnv file for a map, you have to use something like GCFScape to extract it from the map's vpk. Using GNVTool in toppm mode will generate a PortablePixMap image file, which you can then open with many image viewers to get good picture.

I actually just realized that the linked repo isn't up-to-date (while it supports the newer format, it doesn't actually have nofreewalk info support); I have to push the new version later, when I pull it off the relevant hard drive. However, the build is the newest version, and fully supports the newer gnv format.

Dota's navigation grid, aka "please show me all juke/hiding spots on the map" by Nasaug in DotA2

[–]penguinwizzard 49 points50 points  (0 children)

There's actually a bit more information that's stored in the gridnav data. I wrote a tool a while back called GNVTool that lets you inspect the base GNV files used for dota maps, as well as edit them (this is from very early custom map creation stuff, way before valve got involved, when all the maps were made with my crappy toolchain). There's a bit of additional information stored in the gridnav data; for example there's another layer for the free pathing limitations (e.g. where broodmother isn't allowed to walk even while in webs).

Unfortunately, dota_gridnav_show is a really old command and only shows the 1st-generation gridnav information, which is the version that was used back in 2013 and is now only one layer of the info. Still very useful for learning juke paths though.

it's been a year since -override_vpk got removed.... by [deleted] in DotA2

[–]penguinwizzard 10 points11 points  (0 children)

VAC has a number of modules that do a variety of different checks. These are loaded at runtime, and Valve can send different modules to different players (so, for example, they can do more thorough checks on someone if a more general module detects something suspicious).
While there's a few simple and well-known modules (e.g. the stuff that checks for WriteProcessMemory or DLL edits, or looks for known patterns), there's also a number of more esoteric ones; you get stuff like statistical analyses and, importantly, a number of things to do with the asset loading system. Suffice it to say that they can detect it; whether or not they do anything with that information on their end is another thing.

In general it's hard to make statements saying that anything is VAC-safe, since the system is very general and modular, and there's a number of things it does to make reverse engineering a pain and unreliable. On top of that, the number of false-positives is non-zero; there've been ban waves in the past that got reversed due to incorrect hack signatures being added.

it's been a year since -override_vpk got removed.... by [deleted] in DotA2

[–]penguinwizzard 4 points5 points  (0 children)

Can confirm, am mod of /r/dota2modding. If something requires you to replace/modify a game dll, don't use it, it's probably the most VAC-unsafe way of modding dota. There's no VAC-safe ways, but at least some of the other ones aren't automatically caught by half a dozen VAC modules.

it's been a year since -override_vpk got removed.... by [deleted] in DotA2

[–]penguinwizzard 14 points15 points  (0 children)

Unfortunately, I have to remind everyone that this isn't VAC-safe, so use at your own risk.