Raised This Month: $91 Target: $400
 22% 

What is your workflow when developing plugins?


Post New Thread Reply   
 
Thread Tools Display Modes
necavi
Veteran Member
Join Date: Sep 2010
Old 01-02-2014 , 18:08   Re: What is your workflow when developing plugins?
Reply With Quote #21

If anything I think that an Eclipse/Netbeans/IntelliJ plugin/app/whatever should be built, not something based on Visual Studio, since that would continue to lock developers to Windows if they want to use an IDE. I would gladly help out on a project to do that.
necavi is offline
GAVVVR
Member
Join Date: May 2010
Old 01-04-2014 , 16:02   Re: What is your workflow when developing plugins?
Reply With Quote #22

Hello. I use Sublime Text 2 with SourcePawn completions as IDE. I compile easily with ctrl+B shortcut, here is my build system:
Code:
{
	"cmd": ["C:/users/username/Dropbox/sourcemod/scripting/spcomp", "-o..\\plugins\\\\$file_name", "$file"]
}
I test my plugins on local srcds downloaded with SteamCMD. If i want to add Sourcemod to test server, i use Hard links, here is very useful extension for windows OS.
I use git for source control and bitbucket as remote repo (because there is no SourcePawn in the list of languages on github). Since you can create only one git repo in same directory i start my project somewhere on hard drive and use hardlinks again to setup plugins on server. The only thing i do slowly is reloading plugin on server and debugging. I have to write: "sm plugins reload pluginname". After reading this thread, i will try using smx auto-reloader.
Also i sometimes use Textastic app for iOS to watch code.
Hope this info will be useful

Last edited by GAVVVR; 01-04-2014 at 16:10.
GAVVVR is offline
Hawk552
AMX Mod X Moderator
Join Date: Aug 2005
Old 01-04-2014 , 16:58   Re: What is your workflow when developing plugins?
Reply With Quote #23

I host the server locally, and symlink my plugins directory to my scripting/compiled directory. That way, as soon as something is compiled, it is ready to run. I use vim with C highlighting for editing. I wouldn't recommend that if you want good highlighting.
__________________
Hawk552 is offline
Send a message via AIM to Hawk552
Lordearon
Member
Join Date: Jan 2013
Location: Vietnam
Old 01-23-2014 , 04:22   Re: What is your workflow when developing plugins?
Reply With Quote #24

I use notepad++ with cpp highlighting (I had some sourcepawn highlighting before but it didn't properly fold functions).

I use nppFTP to edit the file over SSH directly on the server, this uploads when I save (no source control!). I have a putty session open to the server console with a recompilation script that prompts to confirm if the compilation was successful or not.

it moves the compiled plugin & restarts the server if I want to continue.. (server restart might not be required, but I've just been doing it that way).

I come from a VS2010 background and I'm looking into a more appropriate IDE that also supports javascript, nodejs, python...

so far I played with

  1. webmatrix 3
    touted amazing nodejs support, but it wasn't so great.. this was probably not a good solution for python and other language plugins anyway
  2. netbeans
    the chrome devtools integration dragged me in, the nodejs plugin looked promising and compared to eclipse the configuration was supposed to be easy... - however it doesn't seem to handle the node.js module management properly (AMD / ComposeJS-style require) which is crucial for code completion.
  3. jetbrains webstorm / intelliJ IDEA:
    this IDE is really recomended everywhere on the web and even though the eclipse plugins look promising I don't want to waste more time and have decide to play with this.. so far so good.. . and it seems plugin development for this IDE is really powerful, maybe not too hard to get pawnstudio code completion going?

    webstorm is the lightweight version with features IDEA handles through a plugin, IDEA is supposed to handle any type of IDE
__________________
iGame.vn

Last edited by Lordearon; 01-23-2014 at 04:30.
Lordearon is offline
Chdata
Veteran Member
Join Date: Aug 2012
Location: Computer Chair, Illinois
Old 01-23-2014 , 04:30   Re: What is your workflow when developing plugins?
Reply With Quote #25

1. Come up with a cool sounding complicated idea

2. Think about how I'm going to make it work and things I'll have to do

3. Don't do it because I'm busy or just put it off for other stuff!
__________________
Chdata is offline
Dr. McKay
Sir Dr. SourceMod Plugin Approver Esq. Ltd. M.D. PhD
Join Date: Aug 2011
Location: Atlantis
Old 01-23-2014 , 04:46   Re: What is your workflow when developing plugins?
Reply With Quote #26

I find that a separate repository per plugin is highly unnecessary as most plugins consist of just a single file.

Therefore I just start up my local server (updating it first if necessary) and launch Notepad++. I type out the header and myinfo struct manually because I figure that it'll just take longer to find and copy from an existing file (plus I'm lazy and don't feel like setting up a proper template of some sort).

Then I just start going, hitting F5 to compile directly to my test server (with auto-reloading) and alt-tab to TF2 to check it out.
__________________
Dr. McKay is offline
berni
SourceMod Plugin Approver
Join Date: May 2007
Location: Austria
Old 01-23-2014 , 05:01   Re: What is your workflow when developing plugins?
Reply With Quote #27

Quote:
Originally Posted by Dr. McKay View Post
I find that a separate repository per plugin is highly unnecessary as most plugins consist of just a single file.
You should keep the GIT history clean and not mix it with other projects.
Also you never know how big your plugin will gonna be later and splitting a repository somewhen later would give you headaches. Creating a new repository is pretty easy also.
__________________
Why reinvent the wheel ? Download smlib with over 350 useful functions.

When people ask me "Plz" just because it's shorter than "Please" I feel perfectly justified to answer "No" because it's shorter than "Yes"
powered by Core i7 3770k | 32GB DDR3 1886Mhz | 2x Vertex4 SSD Raid0
berni is offline
Dr. McKay
Sir Dr. SourceMod Plugin Approver Esq. Ltd. M.D. PhD
Join Date: Aug 2011
Location: Atlantis
Old 01-23-2014 , 05:10   Re: What is your workflow when developing plugins?
Reply With Quote #28

Quote:
Originally Posted by berni View Post
You should keep the GIT history clean and not mix it with other projects.
Also you never know how big your plugin will gonna be later and splitting a repository somewhen later would give you headaches. Creating a new repository is pretty easy also.
I usually have a pretty good idea of whether a plugin is ever going to blow up. Even if it does (this has never happened), I can just create a subfolder under scripting (this is how the SourceMod hg repo is set up, anyway).

The kind of stuff I'm releasing publicly is hardly complex enough to require the more advanced features of DVCS. I don't need branches, I don't need multiple commits per release. Each commit is a release.

Basically, I use it as glorified hosting. I can go back and see a revision if need be, but given the nature of this stuff, a single big repository works fine.

Of course, if I was doing something like FF2, then of course I'd make a dedicated repository and break the source out into separate files. The stuff I release just isn't that involved (plus if I made a separate repository for each plugin [public and private] I'd end up with like 75 repos each holding a single file).
__________________

Last edited by Dr. McKay; 01-23-2014 at 05:16.
Dr. McKay is offline
Lordearon
Member
Join Date: Jan 2013
Location: Vietnam
Old 01-23-2014 , 06:16   Re: What is your workflow when developing plugins?
Reply With Quote #29

Quote:
Originally Posted by Powerlord View Post
Well, the point in doing a VS language integration would be to get all the nifty variable highlighting and such that VS supports.

The problem is that the main example of language integration is their Python integration which is crazy complicated.
here's the sample language integration for intelliJ IDEA plugin development:
http://confluence.jetbrains.com/disp...nguage+Support
http://confluence.jetbrains.com/disp...+IntelliJ+IDEA
__________________
iGame.vn

Last edited by Lordearon; 01-23-2014 at 06:17.
Lordearon is offline
Powerlord
AlliedModders Donor
Join Date: Jun 2008
Location: Seduce Me!
Old 01-23-2014 , 11:51   Re: What is your workflow when developing plugins?
Reply With Quote #30

Quote:
Originally Posted by Dr. McKay View Post
I usually have a pretty good idea of whether a plugin is ever going to blow up. Even if it does (this has never happened), I can just create a subfolder under scripting (this is how the SourceMod hg repo is set up, anyway).
The SourceMod plugins are also all released at the same time and share a common bug tracker. They're also hardly ever changed.

Basically, your update history can become a major mess when a lot of different plugins share the same repo even if you're not working on huge plugins. See Also: BrutalGoerge's repo.

Quote:
Originally Posted by Dr. McKay View Post
The kind of stuff I'm releasing publicly is hardly complex enough to require the more advanced features of DVCS. I don't need branches, I don't need multiple commits per release. Each commit is a release.

Basically, I use it as glorified hosting. I can go back and see a revision if need be, but given the nature of this stuff, a single big repository works fine.

Of course, if I was doing something like FF2, then of course I'd make a dedicated repository and break the source out into separate files. The stuff I release just isn't that involved (plus if I made a separate repository for each plugin [public and private] I'd end up with like 75 repos each holding a single file).
Commits I make aren't necessarily finished releases. Especially not since I regularly do coding from 3 different computers (home desktop, home laptop, work desktop).

Also, certain people have taken to using whatever the latest dev code is in my repos. So now, I use branches while I'm working on new features or when I know something is going to need a lot of testing. Not only that, but while I'm working on said new features, I can still go back and make fixes to the current plugin and make new releases of it.

My only real problem with branches is that I have a nasty tendency to merge them in the wrong direction. I had to do a rollback on my PropHunt repo's main branch just recently because I did that.
__________________
Am I back? Well, we'll see.

Last edited by Powerlord; 01-23-2014 at 11:56.
Powerlord is offline
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 04:25.


Powered by vBulletin®
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Theme made by Freecode