Page 1 of 7 123 ... LastLast
Results 1 to 40 of 268
  1. #1
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default UnrealScript IDE for Sublime Text 2 / 3 | Update: Content Assist

    Hey UDK community!

    About one month ago I discovered this awesome text editor named Sublime Text 2. Check it out if you haven't already. If you're new to Sublime Text 2, I'd recommend watching this video tutorial series, because otherwise you would probalby not find all the cool features of this editor.
    I liked it so much that I started to work on an auto-completion plug-in for UnrealScript and now I feel like I've reached an acceptable state in development where I'd like to share it with you. I have profited enough from this community and now it's time to give something back. So here it is:

    UnrealScript IDE for Sublime Text 2 / 3
    Catchy title, hm? It's not yet a full IDE, but I'd like it to become one soon.


    Features

    Dynamic, intelligent auto-completion hints

    • Fully object-oriented completions
    • Context sensitive completions (e.g. in the defaultproperties block you only want to get variables)
    • Content Assist. You wont have to open the editor anymore to search for asset names.
    • Parameter hints
    • Display documentation when you need it
    • Completions feel like the great Sublime Text snippets

    Goto declaration and back again

    • Object-oriented goto declaration (pressing it over controller.GetPlayerViewPoint(a, b) will take you to the declaration of GetPlayerViewPoint in Controller)
    • use F10, alt + left click, right click menu or via 'Goto' -> 'UnrealScript Goto Declaration'
    • when browsing in the declarations you can always return to your starting position by using one of the above keys when nothing is under your cursor.

    Debugger


    Syntax highlighting

    • For .uc files and .log files

    Build system

    • use Ctrl + B, F7 or search in the command palette to build your game
    • if the build contains errors, the error log will be opened, allowing you to navigate to your errors quickly.
    • if the build was successful, the game will start

    Launch Game

    • quickly open the game with your last configuration
    • you can chose which map to open
    • chose between Standalone or a Server and 2 Clients or add any other configuration you might like
    • more information

    Various useful Snippets

    • predefined Snippets for Standard classes, and language features such as defaultproperties

    All features of Sublime Text, such as multiple cursors, thousands of addons and extremely fast and lightweight

    More coming...


    Planned

    Add support for enumerations

    Debugger improvements

    • breakpoint changes inside the debugger should propagate to Sublime Text

    Your suggestion here?

    • You can suggest features, report bugs and vote for features on this site here: UnrealScript IDE - Userecho. If you don't want to use this site, post it here


    Download and install with Package Control right inside Sublime Text 2 (Package Control needs to be installed):

    • just press Ctrl + Shift + P
    • Type "install", hit enter
    • Search for "UnrealScriptIDE", hit enter


    For a more in detail explanation visit the wiki: https://github.com/Zinggi/UnrealScri...etting-Started


    Please note:
    UnrealScriptIDE will only work properly if you add the src folder as a project.
    To do so, goto 'Project' -> 'Add Folder To Project...' -> add the Src folder (/UDK/UDK-201*-**/Development/Src/)


    Please also note that this is my very first python program and I've learned python along with this project. So if you're a python developer please have a look at the source code. I'd really appreciated constructive feedback on this. Thanks.
    -------
    All credits for UnrealDebugger goes to Carlos Lopez. Huge Thanks!
    All credits for various Snippets (and also for the old (now unused) Syntax highlighting file) goes to Michael Alexander. Thanks!
    All credits for Syntax highlighting in UnrealScript files goes to Rokit and Eliot. Thanks!
    Credits for Syntax highlighting in log files goes to Rokit. Thanks!
    -------


    Enjoy!


    If UnrealScriptIDE is helpfull to you, please consider making a donation. (especially when you're using it commercially)
    Thanks!
    Last edited by zinggi57; 12-13-2013 at 06:41 PM.

  2. #2
    Deathless

    Join Date
    Feb 2010
    Location
    Portugal
    Posts
    2,370

    Default

    I will ask a forum administrator to make this a sticky, well done I have to say.

  3. #3
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    Thanks a lot! I really appreciate the sticky, awesome!

  4. #4

    Default

    marvellous

  5. #5

  6. #6
    MSgt. Shooter Person
    Join Date
    May 2010
    Location
    iran
    Posts
    316
    Gamer IDs

    Gamertag: UN

    Default

    how use this ????
    i download package and put in to directory in program but it dont work

  7. #7
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    Thanks guys!

    Quote Originally Posted by silsin View Post
    how use this ????
    i download package and put in to directory in program but it dont work
    Please read and fallow the installation instructions in the first post. (Install with package control!)
    After that, to quote myself: "Please note:
    UnrealScriptIDE will only work properly if you add the src folder as a project. To do so, goto 'Project' -> 'Add Folder To Project...' -> add the Src folder (/UDK/UDK-201-*/Development/Src/)"
    Then it should work. If not report back and I look into this.

    @Topic:
    I've uploaded a small update, adding some more snippets and I've added the language keywords to the completions.
    If you've installed my plugin with package control, it will automatically keep my plugin up-to-date.

    A bigger update is coming soon, including a build system and error reports, so stay tuned.

  8. #8
    MSgt. Shooter Person
    Join Date
    Aug 2010
    Location
    Cape Town, South Africa
    Posts
    361

    Default

    Awesome stuff! Sublime Text 2 is really amazing, and now even more so. Well done.

  9. #9

  10. #10
    MSgt. Shooter Person
    Join Date
    Aug 2010
    Location
    Cape Town, South Africa
    Posts
    361

    Default

    Quote Originally Posted by silsin View Post
    how use this ????
    i download package and put in to directory in program but it dont work
    Sublime Text 2 does not have package control installed by default.
    After installing Sublime Text 2, do the following:

    1) Open this page: http://wbond.net/sublime_packages/pa...l/installation

    2) Open Sublime Text 2, go to View -> Show Console

    3) Copy the commands shown on the package control page (1) into this console window and press enter. It takes a few seconds and you should see the following:


    4) Exit and restart Sublime Text 2

    5) Follow zinggi57's instructions.

    6) Go to File -> Open Folder -> and select the UDK/Development/Src directory.

    7) Open any file in your project via the left hand menu and it should work.
    Last edited by staticvoidlol; 02-23-2013 at 02:02 AM. Reason: Fixed link and spacing.

  11. #11
    MSgt. Shooter Person
    Join Date
    Aug 2010
    Location
    Cape Town, South Africa
    Posts
    361

    Default

    I'm really excited about this IDE (as you can see I'm spamming this thread).
    Do you have any time-frame for Object Oriented auto-completions? Also, will this include inheritance and casting?

  12. #12
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    @staticvoidlol:
    thanks a lot for this step-by-step tutorial for beginners, this will definitely be very helpful for many people.

    Quote Originally Posted by staticvoidlol View Post
    I'm really excited about this IDE (as you can see I'm spamming this thread).
    Do you have any time-frame for Object Oriented auto-completions? Also, will this include inheritance and casting?
    Before I'm starting to implement Object oriented auto-completion, I will finish the build system which is almost complete and ready for the next update. I can't give you a specific time when the object oriented auto-completion will make it in the next update, but it probably won't take more than a month. Build system is probably coming this or the next weekend and from then on I will be working on the requested feature.
    Regarding your second question, yes, this will definitely include inheritance and casting aswell.

    @Topic:
    I've added a Userecho page for this project: UnrealScript IDE - Userecho.
    On this site you can suggest features, report bugs and vote for features. I'm trying this site for the first time, so I'm not sure where this is going, but I think it might be usefull.

    Also a wiki has been added: https://github.com/Zinggi/UnrealScriptIDE/wiki
    Here I will document the features. Currently there is only one page on how to install and setup.
    Last edited by zinggi57; 02-23-2013 at 11:55 AM.

  13. #13
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    New Update:

    Added a build system. To read more refer to the first post.

  14. #14
    Redeemer
    Join Date
    Nov 2009
    Location
    Crete
    Posts
    1,044

    Default

    Besides the fact that there's no guaranty for continues use for the free registration (70$ for an editor with almost zero uc features isn't something I'd consider like the best deal), this one looks interesting. What about multiple project support when it comes to browsing classes?

    Edit:
    After 30 days of using the IDE I came back to say it's the best editor I've ever used so far.
    Last edited by ThePriest909; 08-19-2013 at 03:39 PM.

  15. #15
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    Why do you think it will suddenly force you to pay? The only downside if you don't pay is you get mild nagware, asking you sometimes when you save a file if you want to buy it. I can live with that, especially when looking at the features. I don't want to go back to another editor anymore.
    Multiple projects are supported, just make sure every project contains the Src folder. You can switch very quickly between projects by using Ctrl + Alt + P.

  16. #16
    MSgt. Shooter Person
    Join Date
    Aug 2010
    Location
    Cape Town, South Africa
    Posts
    361

    Default

    Yes, I've used Sublime Text 2 at work without a license for about 6 months now, and the only minor problem was about asking whether you'd like to purchase a license every now and then.
    This project is a big contender to finally wean me off Visual Studio.

    Now, about the build system: I tried it out and it works great. I'm just curious about whether we can add custom launch options (as with VS and nFringe)? E.g. specifying the resolution, no startup movies etc.

  17. #17
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    Sure you can, have a look at the wiki here where I explained it: https://github.com/Zinggi/UnrealScriptIDE/wiki/Usage
    Located under Settings.
    Last edited by zinggi57; 02-27-2013 at 04:11 PM.

  18. #18
    MSgt. Shooter Person
    Join Date
    Aug 2010
    Location
    Cape Town, South Africa
    Posts
    361

    Default

    Awesome! Thanks.

  19. #19
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    I'm now using a new syntax highlighting file that recognizes many more keywords, thanks again to rokit.

    Just give it some time to let your eyes adapt to it, I hope you'll like it.

  20. #20
    Marrow Fiend

    Join Date
    Jul 2006
    Location
    WorldInfo_61
    Posts
    4,198
    Gamer IDs

    Gamertag: KickedWhoCares

    Default

    Okay so Ive been testing this out and have had a few issues:

    1. Typing a default properties (in a blank class where one doesnt already exist) gives me the auto-complete StructDefaultProperties.
    2. Typing a value false in the default properties block for a boolean gave me the auto-complete bForceAllowKismetModification.
    3. Typing else after an if, on a new line after the } gave me the auto-complete SetInitialState.

  21. #21
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    Thanks for the feedback. I didn't really tested it thoroughly.

    I forgot some important snippets, so it just chose the one that is closest to what you've entered.
    This is a small issue, so I'll fix it tonight.

    EDIT: it has been fixed.
    Last edited by zinggi57; 03-04-2013 at 02:05 PM.

  22. #22

  23. #23
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    It's always good to get some feedback, otherwise this would become full of bugs. I can't test everything and therefore I'm thankful for any feedback I get.
    So keep reporting problems if you encounter any

  24. #24
    MSgt. Shooter Person
    Join Date
    Dec 2012
    Posts
    80

    Default

    Awesome job man!

    I was using UnrealScript IDE for Visual Studio, but it was buggy, lacked some stuff and no customization (everything white makes my eyes bleed), Sublime Text 2 is an amazing text editor and with your plugin it's even more!

    I only have one issue though, some things should be highlighted on the syntax (like (), $, ==, etc.), is there any way I can change that?
    Other wise, awesome job! Can't wait for the object-oriented auto-completion!

  25. #25
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    Thanks!

    UnrealScript IDE (now called Real Script IDE) was also my editor of choice before, as it does a great job on auto-completion. What made me change to Sublime was the fact that it is so fast and lightweight and still offers many helpful features.

    There would of course be a way you could change that, but it's no longer necessary as Eliot just happened to have included syntax highlighting for operators to my plug-in. Say thanks to him! (Package controll will update my plug-in automatically, you may need to restart sublime.)
    And if you want your Brackets to be highlighted, there's a plug-in for that: https://github.com/facelessuser/BracketHighlighter
    I haven't tested this one, but from the description it looks like what you want.

  26. #26
    MSgt. Shooter Person
    Join Date
    Dec 2012
    Posts
    80

    Default

    oh, it updated now, thanks Eliot!

    as for that plug-in, well...it's...horrible to say the least, what it does is it uses the selection effect and highlights only the function I'm currently in, so it just becomes a gigantic mess of rainbow rectangles.

    As for the syntax highlighting, there is still a few colors that are switched on my theme and I would like to change them, this is pretty much just a small niche for me because I would like it to be more like this https://raw.github.com/daylerees/col...s/darkside.png

    on a side note, any ETA for the object oriented auto complete? It's just what is stopping this IDE from being perfect

  27. #27
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    Haha, I do also think that this plugin is horrible, but some people like it (it is featured on this site, that's why I knew it) and I thought you wanted your brackets to be highlighted.

    For the syntax highlighting I can only say that it's a work in progress and it should get nicer soon. The picture from the theme you posted can be added to Sublime if you want, but I don't know how it's going to look like with UnrealScript.

    I don't know what ETA stands for, but I think you want to know how long it'll take until the object oriented auto-completion feature will be available.
    As said before, I can't say when exactly, but it wont take much longer.
    It definitely won't be in the next update, as the next update will increase performance (but slow down the startup. It's not that bad, but I like to fix this before I release it), make classes available for auto-completion and most importantly add support for Object-Oriented Goto Declaration (no typecasting yet).

  28. #28
    MSgt. Shooter Person
    Join Date
    Dec 2012
    Posts
    80

    Default

    ETA = Estimated Time of Arrival

    The theme I posted I already installed but has somewhat of a difference to it (different colors to the same syntax, e.g function is blue but in unrealscript files its orange), I'm not saying that your syntax highlight is bad or anything, infact, it's really awesome! It's just I wanted to try to tweak a few things in there for my own pleasure.

  29. #29
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    That's because Sublime Text 2 uses two files for syntax highlighting. There is a syntax definition file that takes care of defining what is a function and what is a variable and there is a theme file that adds colors. Both together give the syntax highlighting. Unfortunately syntax definitions are quite complicated and that's what's being worked on. If you want you can try to contribute or just read our discussion over here.

  30. #30
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    Big Update:

    Performance increase
    • This comes with a downside of performance decrease at startup, but after startup it will be much faster


    Classes auto-completion
    • classes do now also appear in the completion list.
    • especially helpful in the class declaration line when you are thinking about what class to extend.



    Object-oriented go to declaration support
    • e.g. activating goto declaration over controller.GetPlayerViewPoint(a, b) will take you to the declaration of GetPlayerViewPoint in Controller
    • typecasting is not yet supported.



    Object-oriented Auto-completion is coming soon

    This doesn't seam like such a big update, but I can assure you it's huge.
    I refactored and restructured almost every piece of code and redesigned many parts of it. This was all made to make the most desired feature available, as my code wasn't really designed for this before.
    Now it will finally be relatively easy to implement object-oriented auto-completions, so stay tuned!


  31. #31
    MSgt. Shooter Person
    Join Date
    Dec 2012
    Posts
    80

    Default

    Awesome work! Keep it up!

    Sorry for the dumb question but, how do I use the Object-oriented go to declaration?

  32. #32
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    Just place your cursor over the function you want to go to and press F10. This will not work in every case, as it is still much under construction.

    e.g. this would work:

    var Pawn P;
    [save your file, so that P will be registered]
    P.Destro|yed(); [place the cursor '|' somewhere on that function and press F10]

    This will take you to the line in Pawn where Destroyed() was declared. This would also work with variables or things that were declared in parent classes of pawn, such as location.

    @Topic:
    I added a small update that introduces caching.
    This will speed up startup, except for the very first time.

  33. #33
    MSgt. Shooter Person
    Join Date
    Dec 2012
    Posts
    80

    Default

    Oh, I thought that was already introduced on your plug-in, I was thinking it was something like the Goto Symbol (ctrl+p -> @symbolname would cause it to jump to that symbol)

  34. #34
    Marrow Fiend

    Join Date
    Jul 2006
    Location
    WorldInfo_61
    Posts
    4,198
    Gamer IDs

    Gamertag: KickedWhoCares

    Default

    What about inbuilt functions that are not present within the object heirarchy such as dynamic arrays, will this be supported with the upcoming releases as well?

  35. #35
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    Quote Originally Posted by Crazymb View Post
    Oh, I thought that was already introduced on your plug-in, I was thinking it was something like the Goto Symbol (ctrl+p -> @symbolname would cause it to jump to that symbol)
    It wasn't implemented before. Before I just searched the word under the cursor in the saved functions and if by chance it was already parsed it opened the declaration. Now it does actually search for the selected function inside the class where it should be located. So before it was kind of random and now it should always work.

    For the Goto Symbol: I could try to implement this one too, but this isn't really relevant for me as I never use it. So priorities will be elsewhere first.

    Quote Originally Posted by MonsOlympus View Post
    What about inbuilt functions that are not present within the object heirarchy such as dynamic arrays, will this be supported with the upcoming releases as well?
    Can you provide me with a link of all in-build functions? Then I can definitely include those as well. the only ones I know of are the array functions like add or sort, but there are probably more.
    Last edited by zinggi57; 03-11-2013 at 12:07 PM.

  36. #36

  37. #37
    MSgt. Shooter Person
    Join Date
    Dec 2012
    Posts
    80

    Default

    Quote Originally Posted by Eliot View Post
    I think he wants more than just the dynamic array in-built functions, don't know.
    I could search for them but I don't know how to distinguish in-built functions

  38. #38
    Redeemer
    Join Date
    Nov 2009
    Location
    Help-me!
    Posts
    1,267

    Default

    Nfringe per example just hard codes it.

    Since they are not expected to change between versions you can safely assume inbuilt functions will just be there.
    Lead Programmer
    It's the Only NEET Thing to Do

    Programming for non-fiction.
    I'm the function of my code. Conditions are my body and calls are my blood. I have input over a thousand lines. Unknown of bugs, nor known to work. Have withstand coffee to create many programs. Yet, those hands will never code anything again. So, as I pray, Unlimited Code Works.

  39. #39
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Posts
    249

    Default

    Quote Originally Posted by Crazymb View Post
    I think he wants more than just the dynamic array in-built functions, don't know.
    I could search for them but I don't know how to distinguish in-built functions
    Yes, exactly. I wanted to know if there are other types with in-build functions in UnrealScript except for dynamic arrays. For example in python there are some in-build string functions such as "My String".split().
    Or are the dynamic array functions the only ones of their kind?

  40. #40

    Default

    I suggest taking a look at this thread: https://uside.codeplex.com/discussions/286155 A time ago I wrote some pseudo classes for the built-in functions, so basically the idea is that you make a new .uc file called Array and then add in the functions as if they actually existed, then when the parsing process starts you fetch those pseudo files as well, and so the advantage of this is that it's easy to add and modify in-built functions and even add commentary.

    Dynamic arrays is the only data type that has in-built functions, aside from that there is also the function assert which is global. There are also three compile-constant functions such as NameOf( ... ), ArrayCount( ... ), and EnumCount( ... ). Might have missed some things, but this should do for a start
    Last edited by Eliot; 03-12-2013 at 04:53 PM.


 
Page 1 of 7 123 ... LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Copyright ©2009-2011 Epic Games, Inc. All Rights Reserved.
Digital Point modules: Sphinx-based search vBulletin skin by CompletevB.com.