Announcement

Collapse
No announcement yet.

Unrealscript Studio

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Unrealscript Studio

    [SHOT]http://www.digitalconfectioners.com/images/UCStudio/UIDE-08122010.png[/SHOT]

    Now that the Dubai Expo is done, I've started work on an IDE for Unrealscript. It's a custom application rather than being done inside an existing IDE such as Visual Studio or Eclipse. The reason for this is because I think that in order to create a really good IDE that does more than simple parser, syntax highlighting and code completion ... a custom application is needed.

    So currently this project is about 3 days old now.

    Current features are:
    • Add and remove packages for non Epic packages (Excluding UTGame + UTGameContent). This smoothens the process of adding new packages to your game. When you click the Add package button, it'll ask you for a new package name and from there it will add the appropriate directories in the UDK folder and also update the configuration files.
    • Change package compile order for non Epic packages (Excluding UTGame + UTGameContent). This smoothens the process, and ensures that your packages are compiled in the right order. I've seen a few too many posts and questions related to this in the past.
    • Compile packages. Quick way to get Unreal Engine to compile Unrealscript code. @TODO - I still need to add compile configuration so that you can setup different compile parameters (such as debug, final release configurations).
    • Add and remove virtual directories. Because Unrealscript must be stored in a single directory (Classes), it can get frustrating to deal with packages that have 50 - 100 files in them. With virtual directories you can further filter and sort unrealscript files.
    • Add Actor/Object/Interface. Quick interface to add classes. @TODO - This features is planned to be removed and replaced with a more comprehensive wizard.
    • Delete file. When deleting files, the IDE will inform you if any other script files are affected, and how they are affected (Is there another class subclassing this file? Is there another class using this class some how?). It will warn you, and will provide you with a list of references.
    • Filter. You can control what is shown within the Source Explorer Tree. You can filter by class name or class type.
    • Custom tree icons based on class type. Objects, Actors and Interfaces all have different icons based on their parent classes. Users can add other ones too, such as Weapon / Projectile / Inventory / Vehicle (Most will come with the IDE)
    • Smart context menus. When you right click on the class, the context menu will give you options to view the source code, create a subclass, or you can view the parent classes and do the same actions on them. Parent classes are listed from immediate to distance, top to bottom respectively.


    And these are just some of the features of the Source Explorer! I have a lot more features planned for that other parts of the IDE. Having used Unrealscript for the last 12-13 years now, I definitely haven't seen many IDE's that do the above or fully implement the whole list above. I think it's about time a really nice IDE for Unrealscript was made.

    #2
    Very nice! I was just about to start on one myself, but I'll guess I'll just use yours. . Less work for me.

    What language are you making it with?

    Comment


      #3
      Very nice Im looking forward to a pre pre pre pre pre alpha

      Comment


        #4
        Good work, looks very interesting!

        Comment


          #5
          This is something i would very much love to use

          Comment


            #6
            :O

            I want this! Which language are you using to develop this fantastic program?

            Comment


              #7
              interesting idea, good work !!!!

              Comment


                #8
                It's great to hear that someone is working on this! Keep up the good work!

                Comment


                  #9
                  [shot]http://www.digitalconfectioners.com/images/UCStudio/UIDE-14122010.png[/shot]

                  Finally got some decent time to sit down and sort out the class icons and being able to customize it easily. I also added the combo box place holders for the UDK/Editor/Compiler configuration selectors.

                  What language are you making it with?
                  C++ and wxWidgets 2.8.11 (Although I may upgrade this 2.9 sometime)

                  Thanks for your support everyone. I'll keep plugging away at this and hopefully I'll have a version soon for production soon.

                  Comment


                    #10
                    Great idea James, looking forward to see it in action. Couple of thoughts:

                    1- Did you consider adding a "Run" feature? You know, you can execute UDK.exe with some flags just like nFringe.

                    2- Will you implement a text search? Basic but very important... Helped me alot.

                    3- "Go to Definition"... When you right click on some class, that's one of the options displayed in VS. Very helpful as well. I hope you can add this to your TODO list.

                    Good luck.

                    Hamad from Muharraqi Studios.

                    Comment


                      #11
                      nice project will come in handy keep us updated with more features ^_^

                      Comment


                        #12
                        1- Did you consider adding a "Run" feature? You know, you can execute UDK.exe with some flags just like nFringe.
                        In the screenshot from post #9, you'll notice a little UDK icon next to a combo box and also a little UDK + Wrench icon next to a combo box. These are equivalent to the "Run" buttons in Visual Studio. The combo boxes allow you to add configurations to when you run UDK. This allows you to create quick configurations to run a server / dedicated server / client only and so forth.

                        2- Will you implement a text search? Basic but very important... Helped me alot.
                        Yes. This is a pretty important feature. The text search will however, be a lot more focused. More on this later.

                        3- "Go to Definition"... When you right click on some class, that's one of the options displayed in VS. Very helpful as well. I hope you can add this to your TODO list.
                        Yes. Right now, what I also have is "Go to parent classes >" as shown in the screenshot in post #1. But certainly definition look ups are something I plan to have.

                        nice project will come in handy keep us updated with more features ^_^
                        Thanks! Will do.

                        Comment


                          #13
                          I know this may seem like a silly request, but could you ensure that you add the ability for your intellisense to detect variables that are declared as local? It seems like an elementary feature, but it doesn't seem to work/doesn't seem to be in nFringe, and it's really killing me lol.

                          Also another basic feature request would be to be able to change how many characters need to be entered before intellisense starts up. nFringe seems to have this hard-coded at one, which makes it annoying when it pops up when I try to use a single letter variable, for example a for loop, I have a set in stone habit of declaring "i" for the for loop, and whenever I try to use that variable, pop! Up comes intellisense suggesting that I use "if" instead... it has lead to a lot of errors.

                          (Dont get me wrong, I love nFringe, and it's probably something I've done wrong, but it still would be nice to see in a dedicated US app.

                          Comment


                            #14
                            Two things regarding your application:
                            • Is it going to be 100% free for commercial use?
                            • What are the plans for debugging support?

                            Forgive me being a bit blunt with those questions, not asking because I need free IDE for my own benefit - quite the opposite, I started writing a dedicated IDE myself, which was meant to be rather debugger-centric from the get go. Then I put the project on a back burner for a bit and I'm curious whether I should eventually resume the development or is it going to be unnecessary after you release your program.

                            Comment


                              #15
                              Great initiative. I hope you finish this one. It would be a great asset for the entire community.

                              Looking forward to see your progress.

                              Comment

                              Working...
                              X