[Release] GSC Dump Searcher
-
GSC Dump Search
This program will search the contents of every GSC file in the defined directory for a specified string and return its usage, path, and line. It is also able to show the origin script with syntax highlighting by double clicking the location cell of the search results.
Photos
Main Form
GSC Peek Form
Notes
You must provide your own decompiled GSC dump. The program looks for a folder named
gsc-dump
at the root of the program directory and can be changed inconfig.json
.All of the toolbar functionality is also missing at the moment.
Downloads
GitHub Source
GitHub Releases
Full GSC Dump (SP, MP, & ZM scripts)
Trimmed GSC Dump (Only MP & ZM scripts)I did not make these dumps. I came to possess them long ago from people on other forums.
-
Nice project for sure, but, and I hate to say it, I don't really see any reason why this would be used over a normal program that does this, and is quite frankly does it a lot better. I'm not even seeing regex support and looking at the source very quickly, I don't think the gui will even be responsive while searching and searching might be quite inefficient.
Maybe try to think of some features that make sense for gsc specifically, since anything that's related to just normal text searching has already been done by others, and done way better than anyone who browses this forum could do.
I can't think of too many ideas for you, but one thing that sometimes annoys me a bit, is encountering some custom gsc function they call, and then I have to search where the function is defined so I understand what's happening.
That process could be made easy. -
Ox_ First of all, thanks for spending the time to write out some well-thought criticism. It's a thousand times better than some half-assed comment and I'm glad that yours is the first I've received.
This project is in its infancy and I'm updating it regularly. I made it because it's something that I personally use on a daily basis and I plan on adding all sorts of functionality. The initial version you see here is the absolute bare-minimum and will improve over time. As I need more from the project, I'll add it. It'd be great if you could list some of the programs you mentioned to be better so I can hopefully incorporate some of their aspects into this one.
You're absolutely right that the GUI isn't responsive, I haven't gotten around incorporating threading and it's something I'd like to do once the basics are fleshed out because it's not like the program is doing much at the moment. I'd like to have a skeleton before I move onto the organs.
Regex is on the table but not a high priority because I personally never use it. Now that you've made your comment, I might just push it up the list since at least you seem to find it to be of importance.
Your function idea is actually a good one but would probably require me to write my own parser which is kind of overkill for something that's supposed to primarily search for instances of strings. I'd even bring up your argument that there's other programs to do that for you but they generally include a suite of other tools that you just don't need. It's like editing an XML, JSON, or CVS file with an IDE, and that's exactly why I started developing this project. It's still a good idea that I'll most likely end up bringing into fruition just to see if it fits well into the idea of what this is supposed to be.
To conclude, it's never a bad thing to have options lol. Whether someone wants to use this project is up to them and they're free to use other ones if it doesn't suit their tastes. It's also open source so they can go ahead add features and changes themselves if they desire. Honestly, this project is primarily for me and my needs, but I'd still like to make it available for anyone who'd ever want to utilize it. Again, thanks for your criticisms.
-
im stoopid so I probably wont even use this, but great job anyway. people smarter than me will probably enjoy this
-
Ox_ said in GSC Dump Searcher:
Nice project for sure, but, and I hate to say it, I don't really see any reason why this would be used over a normal program that does this, and is quite frankly does it a lot better. I'm not even seeing regex support and looking at the source very quickly, I don't think the gui will even be responsive while searching and searching might be quite inefficient.
Maybe try to think of some features that make sense for gsc specifically, since anything that's related to just normal text searching has already been done by others, and done way better than anyone who browses this forum could do.
I can't think of too many ideas for you, but one thing that sometimes annoys me a bit, is encountering some custom gsc function they call, and then I have to search where the function is defined so I understand what's happening.
That process could be made easy.I'm glad you took the comment this way, kinda of felt bad about writing it, but couldn't resist writing it either.
And yeah, I for sure understand the appeal of you mostly making it for your own needs, it's fun. Sometimes that's all the reason one needsBut anyway, some tools, personally I've been using AstroGrep to do this. But there's so much, pretty much every half decent text editor will have a "search in files" feature. Even Windows search does this, though, it of course shouldn't be anyone's choice for this.
I Googled for a few secs and found many recommendations for different tools, though one stuck out. Someone said "010 Editor will search inside files in 0 sec". Well I had to check that out, and holy shit.
I don't know how, but it literally displayed results in less than a second. And that was right after I installed the tool and just went straight to "find in files". So it's not like I made it index the gsc folder first or something.
Even searching "health" in the gsc folder, which obviously is going to come up with like a million results, took less than 2 seconds. And I even keep my gsc dump on my slow hdd instead of on any of the ssds or the m.2 (though, I'd assume the files were cached to my memory by this point).
Probably going to make this my new go to tool for this, it's even a great text editor on top of having such stupidly efficient searching.Another suggestion:
Maybe you'd want to skip trying to reinvent the wheel on an efficient search engine and use something that's already available?
Perhaps Grep, which you might know from Linux.
I'd guess it's probably better than anything either of us could ever hope to make. And probably does searching "in 0 sec", like that text editor I tried above. -
Ox_ 010 Editor looks like a wonderful program but it has a hefty price tag . However, it does offer scripting support and is worth the cash so honestly something I see myself investing into in the future for my general workflow.
AstroGrep is actually what I was envisioning for this project to evolve into, thanks for showing it to me. One of the main things I wanted was to peek into the file and line where the instances were found. I'll give it a try
Edit: I just tried AstroGrep and it's actually slower than my project doing both case sensitive and case insensitive searches. Maybe there's some configuration I need to do .
-
TheHiddenHour said in GSC Dump Searcher:
Ox_ 010 Editor looks like a wonderful program but it has a hefty price tag . However, it does offer scripting support and is worth the cash so honestly something I see myself investing into in the future for my general workflow.
AstroGrep is actually what I was envisioning for this project to evolve into, thanks for showing it to me. One of the main things I wanted was to peek into the file and line where the instances were found. I'll give it a try
Edit: I just tried AstroGrep and it's actually slower than my project doing both case sensitive and case insensitive searches. Maybe there's some configuration I need to do .
Oh yeah, I just tried the free trial. If I'm going to start using it, I'll just get a cracked version haha.
And is AstroGrep really inefficient? Maybe you didn't have the files cached to memory when you ran it, and then had when you ran your program?
Well anyway, AstroGrep was pretty much just the first thing I found years ago when I was searching for a program to do this, it had all I needed, regex, responsive gui while searching, peek results, search & destination history, file types, and umm probably something else that I often use as well.
Didn't do research on how efficient it is or whatever. Who knows, maybe it's not efficient at all. -
Jesus Christ.. A mature discussion of work.. on Plutonium.. I never thought I'd see the day.
OP- regardless of it's use, It's good to see some nice work, practice makes perfect after all. Nice job posting the source etc too, really helps trust and allows others to learn or comment. -
You guys seem to be missing _globallogic.gsc in your linked dumps. Here you go.
-
Deicide Hey would you happen to have any more of the missing scripts? I'm working on repairing the BO2 scripts to make it possible to recompile them, but I am missing some scripts and the Cerberus Decompiler and fast file explorer does not extract them.
-
JezuzLizard List what scripts you're missing and ill see if i have them and pastebin them to you
Getting that _globallogic to work normally decompiled will be a challenge indeed. I wish you luck homie.
-
Deicide You could also just zip up the whole dump you have and share it with us, maybe there are a few nice additions or changes we don't know of yet.
-
Sure. No problem.
https://www6.zippyshare.com/v/Tn6DONDD/file.html
Likely that many files are copies of others as i've gotten dumps from many sources and combined them together, and most gsc's have a txt file to match. Txt files are the decompiled copies, gsc's are usually compiled properly (but sometimes they are not). I attained the source of _globallogic.gsc from somewhere else. So this has no compiled GSC. For example. But you could always dump it using a GSC Retriever or just simply making your own program to dump it from memory yourself.
There are numerous other types of files here that aren't in the OP's dump. CSC, SHOCK, Graph, LUA, etc etc. Likely other GSC's as well.
Have fun
-
Deicide Would you be able to upload it to another site? I am unable to download from the current link.
-
-
Deicide Thank you.
-
JezuzLizard Please keep me updated with this reverse engineering process you're embarking on.
I would very much like to see the _rank gsc and _globallogic gsc fixed up for both PC and Console. Good luck!
-
Deicide Since my main interest is in zombies I haven't done anything specific to multi yet. But when I get to gametypes_zm I will compare the multi scripts that correspond to the zm scripts killing 2 birds with 1 stone. I make no guarantees however. The more core a script is the harder it is to debug so even if I fix many errors in _globallogic.gsc its unlikely it will work. I'll still do it though since it can be used as a superior reference to any current dump since it will have near parity with the original script.
I intend on making an initial release of this project probably later today assuming I can check the remaining scripts by then.
I only have to look thru another 6 scripts, and then I will start gametypes_zm. -
This post is deleted!