Another OS Launcher

Results 1 to 3 of 3
  1. #1
    Ω -DefaulT is offline
    MemberRank
    Aug 2006 Join Date
    Emerald CityLocation
    1,429Posts

    Another OS Launcher

    For OSRose and OSIRose servers.

    So basically i was bored and i decided to make a launcher that is based off the irose UI. This has a built in news system, very basic, basically u put images in and ppl click to read the news, it runs off .ini files so you can change the news simply by changing the image url in the ini file. You can enable and disable which news articles you want to show by editing the ini file. I will include the psd and font files that i used.

    Previews: (keep in mind its basic UI)



    Ini Configuration:

    irose.ini
    Code:
    [NEWS]
    News1 = "http://img201.imageshack.us/img201/4418/sub1.png"
    News2 = "http://img254.imageshack.us/img254/9994/sub2.png"
    News3 = "http://img139.imageshack.us/img139/8177/sub3.png"
    News4 = "http://img146.imageshack.us/img146/3825/sub4.png"
    Info1 = "http://img178.imageshack.us/img178/5003/info1v.png"
    Info2 = ""
    Info3 = ""
    Info4 = ""
    1Enabled = True
    2Enabled = False
    3Enabled = False
    4Enabled = False
    
    [SERVER]
    IPAdd = "Server IP Address"
    
    [UPDATE]
    UpdateINI = "http://default.site40.net/irose.ini"
    Explained:
    Code:
    [NEWS]
    News1 = [URL to image for news 1 title bar]
    News2 = [URL to image for news 2 title bar]
    News3 = [URL to image for news 3 title bar]
    News4 = [URL to image for news 4 title bar]
    Info1 = [URL to image of the actual news for news 1]
    Info2 = [URL to image of the actual news for news 2]
    Info3 = [URL to image of the actual news for news 3]
    Info4 = [URL to image of the actual news for news 4]
    1Enabled = [True = showing article 1, False = not showing]
    2Enabled = [True = showing article 2, False = not showing]
    3Enabled = [True = showing article 3, False = not showing]
    4Enabled = [True = showing article 4, False = not showing]
    
    [SERVER]
    IPAdd = [Really?]
    
    [UPDATE]
    UpdateINI = [Link to remote irose config ini]
    update.ini
    Code:
    [UPDATE]
    UpdateINI = "http://default.site40.net/irose.ini"
    UpdateINI2 = "http://default.site40.net/update.ini"
    Current = "C:\Users\user\Documents\Visual Studio 2010\Projects\iRose UI\iRose UI\bin\Debug\"
    Explained:
    Code:
    [UPDATE]
    UpdateINI = [Link to remote irose config ini]
    UpdateINI2 = [Link to remote update config ini]
    Current = [Your rose directory!]
    How to use:
    Download
    Extract to your rose directory
    Edit files accordingly
    Upload irose.ini and update.ini to your webserver
    Run.

    Source:
    Code:
    'Coded by -DefaulT d.faultx@gmail.com
    
    'Calls the ini reader
    Imports Nini.Config
    Imports System.IO
    
    Public Class Form1
    
        Private Sub PictureBox2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox2.Click
            'Closes the application
            Me.Close()
        End Sub
    
        Private Sub PictureBox2_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox2.MouseHover
            'Image rollover
            PictureBox2.Image = My.Resources.x2
        End Sub
    
        Private Sub PictureBox2_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox2.MouseLeave
            'End image rollover
            PictureBox2.Image = My.Resources.x
        End Sub
    
        Private Sub PictureBox4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox4.Click
            'Closes the application
            Me.Close()
        End Sub
    
        Private Sub PictureBox4_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox4.MouseHover
            'Image rollover
            PictureBox4.Image = My.Resources.exit2
        End Sub
    
        Private Sub PictureBox4_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox4.MouseLeave
            'End image rollover
            PictureBox4.Image = My.Resources.exit1
        End Sub
    
        Private Sub PictureBox3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox3.Click
            'Start the game and close the launcher
            Dim irose As New IniConfigSource("irose.ini")
            Dim IPAdd As String = irose.Configs("SERVER").Get("IPAdd")
            Dim trose As String = "TRose.exe @TRIGGER_SOFT@ _server "
            Shell(trose & IPAdd)
            'Closes after the game starts
            Me.Close()
        End Sub
    
        Private Sub PictureBox3_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox3.MouseHover
            'Image rollover
            PictureBox3.Image = My.Resources.play2
        End Sub
    
        Private Sub PictureBox3_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox3.MouseLeave
            'End image rollover
            PictureBox3.Image = My.Resources.play1
        End Sub
        Dim currentversion As String
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Dim Update As New IniConfigSource("update.ini")
    
            Dim u As String = Update.Configs("UPDATE").Get("UpdateINI")
            Dim p As String = Update.Configs("UPDATE").Get("Path")
            Dim u2 As String = Update.Configs("UPDATE").Get("UpdateINI2")
    
            'Getting update info
            If System.IO.File.Exists(p + "irose.ini") = True Then
                System.IO.File.Delete(p + "irose.ini")
            End If
    
            My.Computer.Network.DownloadFile _
        (u, _
        p + "irose.ini")
    
            If System.IO.File.Exists(p + "update.ini") = True Then
                System.IO.File.Delete(p + "update.ini")
            End If
    
            My.Computer.Network.DownloadFile _
        (u2, _
        p + "update.ini")
            'Getting config info
            Dim irose As New IniConfigSource("irose.ini")
            Dim s1 As String = irose.Configs("NEWS").Get("News1")
            Dim s2 As String = irose.Configs("NEWS").Get("News2")
            Dim s3 As String = irose.Configs("NEWS").Get("News3")
            Dim s4 As String = irose.Configs("NEWS").Get("News4")
            Dim e1 As String = irose.Configs("NEWS").Get("1Enabled")
            Dim e2 As String = irose.Configs("NEWS").Get("2Enabled")
            Dim e3 As String = irose.Configs("NEWS").Get("3Enabled")
            Dim e4 As String = irose.Configs("NEWS").Get("4Enabled")
    
            'Set up the news
            If e1 = "True" Then
                Dim client1 As New System.Net.WebClient()
                Dim stream1 As New System.IO.MemoryStream()
                Dim data1 As Byte() = client1.DownloadData(s1)
                client1.Dispose()
                stream1.Write(data1, 0, data1.Length)
                PictureBox5.Image = Image.FromStream(stream1)
                PictureBox13.Visible = True
            End If
            If e2 = "True" Then
                Dim client2 As New System.Net.WebClient()
                Dim stream2 As New System.IO.MemoryStream()
                Dim data2 As Byte() = client2.DownloadData(s2)
                client2.Dispose()
                stream2.Write(data2, 0, data2.Length)
                PictureBox6.Image = Image.FromStream(stream2)
                PictureBox9.Visible = True
            End If
            If e3 = "True" Then
                Dim client3 As New System.Net.WebClient()
                Dim stream3 As New System.IO.MemoryStream()
                Dim data3 As Byte() = client3.DownloadData(s3)
                client3.Dispose()
                stream3.Write(data3, 0, data3.Length)
                PictureBox7.Image = Image.FromStream(stream3)
                PictureBox10.Visible = True
            End If
            If e4 = "True" Then
                Dim client4 As New System.Net.WebClient()
                Dim stream4 As New System.IO.MemoryStream()
                Dim data4 As Byte() = client4.DownloadData(s4)
                client4.Dispose()
                stream4.Write(data4, 0, data4.Length)
                PictureBox8.Image = Image.FromStream(stream4)
                PictureBox11.Visible = True
            End If
        End Sub
    
        Private Sub PictureBox13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox13.Click
            'Get info for news item #1
            Dim irose As New IniConfigSource("irose.ini")
            Dim i1 As String = irose.Configs("NEWS").Get("Info1")
            PictureBox12.BringToFront()
            PictureBox12.Visible = True
            PictureBox14.Visible = True
            PictureBox14.BringToFront()
            Dim client7 As New System.Net.WebClient()
            Dim stream7 As New System.IO.MemoryStream()
            Dim data7 As Byte() = client7.DownloadData(i1)
            client7.Dispose()
            stream7.Write(data7, 0, data7.Length)
            PictureBox12.Image = Image.FromStream(stream7)
        End Sub
    
        Private Sub PictureBox13_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox13.MouseHover
            'Image rollover
            PictureBox13.Image = My.Resources.add2
        End Sub
    
        Private Sub PictureBox13_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox13.MouseLeave
            'End image rollover
            PictureBox13.Image = My.Resources.add
        End Sub
    
        Private Sub PictureBox9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox9.Click
            'Get info for news item #2
            Dim irose As New IniConfigSource("irose.ini")
            Dim i2 As String = irose.Configs("NEWS").Get("Info2")
            PictureBox12.BringToFront()
            PictureBox12.Visible = True
            PictureBox14.Visible = True
            PictureBox14.BringToFront()
            Dim client7 As New System.Net.WebClient()
            Dim stream7 As New System.IO.MemoryStream()
            Dim data7 As Byte() = client7.DownloadData(i2)
            client7.Dispose()
            stream7.Write(data7, 0, data7.Length)
            PictureBox12.Image = Image.FromStream(stream7)
        End Sub
    
        Private Sub PictureBox9_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox9.MouseHover
            'Image rollover
            PictureBox9.Image = My.Resources.add2
        End Sub
    
        Private Sub PictureBox9_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox9.MouseLeave
            'End image rollover
            PictureBox9.Image = My.Resources.add
        End Sub
    
        Private Sub PictureBox10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox10.Click
            'Get info for news item #3
            Dim irose As New IniConfigSource("irose.ini")
            Dim i3 As String = irose.Configs("NEWS").Get("Info3")
            PictureBox12.BringToFront()
            PictureBox12.Visible = True
            PictureBox14.Visible = True
            PictureBox14.BringToFront()
            Dim client7 As New System.Net.WebClient()
            Dim stream7 As New System.IO.MemoryStream()
            Dim data7 As Byte() = client7.DownloadData(i3)
            client7.Dispose()
            stream7.Write(data7, 0, data7.Length)
            PictureBox12.Image = Image.FromStream(stream7)
        End Sub
    
        Private Sub PictureBox10_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox10.MouseHover
            'Image rollover
            PictureBox10.Image = My.Resources.add2
        End Sub
    
        Private Sub PictureBox10_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox10.MouseLeave
            'End image rollover
            PictureBox10.Image = My.Resources.add
        End Sub
    
        Private Sub PictureBox11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox11.Click
            'Gets info for news item #4
            Dim irose As New IniConfigSource("irose.ini")
            Dim i4 As String = irose.Configs("NEWS").Get("Info4")
            PictureBox12.BringToFront()
            PictureBox12.Visible = True
            PictureBox14.Visible = True
            PictureBox14.BringToFront()
            Dim client7 As New System.Net.WebClient()
            Dim stream7 As New System.IO.MemoryStream()
            Dim data7 As Byte() = client7.DownloadData(i4)
            client7.Dispose()
            stream7.Write(data7, 0, data7.Length)
            PictureBox12.Image = Image.FromStream(stream7)
        End Sub
    
        Private Sub PictureBox11_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox11.MouseHover
            'Image rollover
            PictureBox11.Image = My.Resources.add2
        End Sub
    
        Private Sub PictureBox11_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox11.MouseLeave
            'End image rollover
            PictureBox11.Image = My.Resources.add
        End Sub
    
        Private Sub PictureBox14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox14.Click
            'Reseting to the news tables
            PictureBox14.Visible = False
            PictureBox12.Visible = False
        End Sub
    
        Private Sub PictureBox14_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox14.MouseHover
            'Image rollover
            PictureBox14.Image = My.Resources.back2
        End Sub
    
        Private Sub PictureBox14_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox14.MouseLeave
            'End image rollover
            PictureBox14.Image = My.Resources.back
        End Sub
    
        Private Sub PictureBox15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox15.Click
            MsgBox("This is a manual update if the automatic isnt working.")
            Dim Update As New IniConfigSource("update.ini")
    
            Dim u As String = Update.Configs("UPDATE").Get("UpdateINI")
            Dim p As String = Update.Configs("UPDATE").Get("Path")
            Dim u2 As String = Update.Configs("UPDATE").Get("UpdateINI2")
    
            'Getting update info
            If System.IO.File.Exists(p + "irose.ini") = True Then
                System.IO.File.Delete(p + "irose.ini")
            End If
    
            My.Computer.Network.DownloadFile _
        (u, _
        p + "irose.ini")
    
            If System.IO.File.Exists(p + "update.ini") = True Then
                System.IO.File.Delete(p + "update.ini")
            End If
    
            My.Computer.Network.DownloadFile _
        (u2, _
        p + "update.ini")
        End Sub
    End Class
    Download:
    Launcher: http://default.site40.net/release/irose.zip
    PSD: http://default.site40.net/release/PSD.zip
    Font: http://img.dafont.com/dl/?f=visitor

    Am i forgetting anything? Oh yes..

    MAKE SURE YOU UPLOAD THE IROSE.INI AND UPDATE.INI TO A WEBSERVER AND EDIT THE LOCAL ONES TO POINT TO THE WEBSERVER!

    Okay done...

    Thoughts?


  2. #2
    Account Upgraded | Title Enabled! perrin9028 is offline
    MemberRank
    Nov 2007 Join Date
    806Posts

    Re: Another OS Launcher

    Looks nice, now, try incorporating the patching codes from neoncube and you can add a progress bar right before the exit button to fill up some of that empty space.

  3. #3
    Ω -DefaulT is offline
    MemberRank
    Aug 2006 Join Date
    Emerald CityLocation
    1,429Posts

    Re: Another OS Launcher

    Quote Originally Posted by perrin9028 View Post
    Looks nice, now, try incorporating the patching codes from neoncube and you can add a progress bar right before the exit button to fill up some of that empty space.
    neon cube is coded in c++ this is coded in vb.net to incorporate there auto patching into this would be a pain in the booty cause i would have to convert all the coding into vb.net.



Advertisement