From d822c808828c50d1d1db1284eeaaa133d4236de0 Mon Sep 17 00:00:00 2001 From: Daniel Ginovker Date: Sat, 5 Oct 2019 16:50:26 -0400 Subject: [PATCH] Make new contributors welcome (#11) * @mediabi3 * Fix up for guide and making server run easier --- 2006Redone Client/src/Client.java | 22 ++++++++++++++++++ 2006Redone Client/src/Game.java | 2 +- 2006Redone Client/src/Main.java | 12 ++++++++++ 2006Redone Server/src/redone/Server.java | 17 +++++++++++++- .../src/org/apollo/jagcached/FileServer.java | 15 ++++++++++++ .../production/2006rebotted/Client.class | Bin 0 -> 1029 bytes .../production/2006rebotted/Game.class | Bin 221583 -> 221617 bytes .../production/2006rebotted/Main.class | Bin 1196 -> 1196 bytes .../org/apollo/jagcached/FileServer.class | Bin 3811 -> 4501 bytes .../2006rebotted/redone/Server.class | Bin 6581 -> 7121 bytes .../content/skills/core/Woodcutting$4.class | Bin 3459 -> 3358 bytes .../content/skills/core/Woodcutting.class | Bin 10608 -> 10608 bytes README.md | 13 ++++++++--- 13 files changed, 76 insertions(+), 5 deletions(-) create mode 100644 2006Redone Client/src/Client.java create mode 100644 CompiledServer/production/2006rebotted/Client.class diff --git a/2006Redone Client/src/Client.java b/2006Redone Client/src/Client.java new file mode 100644 index 00000000..38fb15cb --- /dev/null +++ b/2006Redone Client/src/Client.java @@ -0,0 +1,22 @@ +import java.net.InetAddress; +import java.net.UnknownHostException; + +public final class Client { + + public static void main(String[] args) { + ClientSettings.SERVER_IP = "127.0.0.1"; + try { + Game game = new Game(); + Game.nodeID = 10; + Game.portOff = 0; + Game.setHighMem(); + Game.isMembers = true; + Signlink.storeid = 32; + Signlink.startpriv(InetAddress.getLocalHost()); + game.createClientFrame(503, 765); + } catch (UnknownHostException e) { + e.printStackTrace(); + } + } + +} \ No newline at end of file diff --git a/2006Redone Client/src/Game.java b/2006Redone Client/src/Game.java index bf3274c2..8bdf08d2 100644 --- a/2006Redone Client/src/Game.java +++ b/2006Redone Client/src/Game.java @@ -6536,7 +6536,7 @@ public class Game extends RSApplet { } catch(IOException _ex) { - s = "connection problem"; + s = "Connection problem -- Make sure FileServer is running!!"; expectedCRCs[8] = 0; } catch(Exception _ex) diff --git a/2006Redone Client/src/Main.java b/2006Redone Client/src/Main.java index 096c90c1..7f954aba 100644 --- a/2006Redone Client/src/Main.java +++ b/2006Redone Client/src/Main.java @@ -3,6 +3,18 @@ import java.net.UnknownHostException; public final class Main { + /* + + DEAR DEVELOPER! + + If you want to run the client locally, the easiest way to do that is run the class "Client.java" instead! + + If you REALLY want to use this class, add two random program arguments. + But seriously, Client.java is just a copy-paste of this class and does it locally. Use that instead! + + + */ + public static void main(String[] args) { if (args.length > 1) { diff --git a/2006Redone Server/src/redone/Server.java b/2006Redone Server/src/redone/Server.java index 40800ac8..cc9e3af8 100644 --- a/2006Redone Server/src/redone/Server.java +++ b/2006Redone Server/src/redone/Server.java @@ -1,5 +1,6 @@ package redone; +import java.io.File; import java.io.IOException; import java.net.InetSocketAddress; @@ -91,6 +92,20 @@ public class Server { System.out.println("@@@@ DEBUG MODE IS ENABLED @@@@"); } + if (!new File("data").exists()) + { + System.out.println("************************************"); + System.out.println("************************************"); + System.out.println("************************************"); + System.out.println("WARNING: I could not find the /data folder. You are LIKELY running this in the wrong directory!"); + System.out.println("In IntelliJ, fix it by clicking \"Server\" > Edit Configurations at the top of your screen"); + System.out.println("Then changing the \"Working Directory\" to be in \"2006rebotted/2006Redone Server\", instead of just \"2006rebotted\""); + System.out.println("************************************"); + System.out.println("************************************"); + System.out.println("************************************"); + System.exit(1); + } + /** * Starting Up Server */ @@ -128,7 +143,7 @@ public class Server { /** * Server Successfully Loaded */ - System.out.println("Server listening on port 85.214.117.88: " + System.out.println("Server listening on port " + serverlistenerPort); /** diff --git a/2006Redone file_server/src/org/apollo/jagcached/FileServer.java b/2006Redone file_server/src/org/apollo/jagcached/FileServer.java index fd19a26d..07e67874 100644 --- a/2006Redone file_server/src/org/apollo/jagcached/FileServer.java +++ b/2006Redone file_server/src/org/apollo/jagcached/FileServer.java @@ -1,5 +1,6 @@ package org.apollo.jagcached; +import java.io.File; import java.net.InetSocketAddress; import java.net.SocketAddress; import java.util.concurrent.ExecutorService; @@ -68,6 +69,20 @@ public final class FileServer { * @throws Exception if an error occurs. */ public void start() throws Exception { + if (!new File("cache").exists()) + { + System.out.println("************************************"); + System.out.println("************************************"); + System.out.println("************************************"); + System.out.println("WARNING: I could not find the /cache folder. You are LIKELY running this in the wrong directory!"); + System.out.println("In IntelliJ, fix it by clicking \"FileServer\" > Edit Configurations at the top of your screen"); + System.out.println("Then changing the \"Working Directory\" to be in \"2006rebotted/2006Redone file_server\", instead of just \"2006rebotted\""); + System.out.println("************************************"); + System.out.println("************************************"); + System.out.println("************************************"); + System.exit(1); + } + logger.info("Starting workers..."); pool.start(); diff --git a/CompiledServer/production/2006rebotted/Client.class b/CompiledServer/production/2006rebotted/Client.class new file mode 100644 index 0000000000000000000000000000000000000000..40cf1d9885bc6d3b79bfaa3b77c959cbaf4f3ed6 GIT binary patch literal 1029 zcmZ`&T~pIQ6g}IPhJ=(BiU=x#C|W=%ARh{dA{3|=aVRpQJ~*K)B~TJ3UC@8zGt(Jh zbcP?`AM#1ZvneA!U^2P8_hZjJ_ukEq-`~ywjN!F~7W6gZzKI9O80fbUL!U`8pv9n8 zAL`vB6GO;a7{-Xj-KcgvHZW$P8RG^f3``2dXI#%!vjWjf|As(p-rte}$%5<2H;4P1 zGFW#uE3~v0{E}1IZ~|BB7si;{ajOE2h53prJvGhq`;O}gv}ZmRcAX<9TXDQ{wx|Nv zD^G{`WoMsg@xl^U#tSOl^-xc$>^pDI^FMpbepThZl;nYOeNUr0L792dSAYs6ipnYN ztvClEDb^=o75&4YBo|%Hys1uZNb|ALinM?^GCDal%y-1V6B|!4#T=TEjcLr-c&5cH z(l(ysg@HL6FEL|a-o^rQHWsmDV;OmYuCU1eF}LwbXN%Vf2&67svbwn|OG==*?kh^A z*do?w7ISMGxwTLEx4P$-2QGR@G>;R?FR*pYZyfl6THW4e$yKSA-SWxDS*mc>dI$m?nf}Z1{1eEjm{sKj z>L75B1UfTUN9mcjlmh7}S+8_42rocGCZE^7B#(P4oZx!klq5!w;`P=~1ndCPlx@_q zTm{#Lfm4X%(0z?E9vWk4=iaUd;5s^}ndrm~TJ+&_Lw?=A+en;&6DH;kXtA=>A z2ICBku^P-&PYu=?n$BPkwuqlCkzXfBeC6#PJVEl9Pz@NxIDeifbm|EtC=FUo?ksX` zA`P2q6X;@8FOtZxno-s;&YC6|F-1C>Y7a3I=)+CiBJKo#%r4yKjug>NFK~ySfykkO M-WVNssYY<`54zRX!~g&Q literal 0 HcmV?d00001 diff --git a/CompiledServer/production/2006rebotted/Game.class b/CompiledServer/production/2006rebotted/Game.class index 1daa74d60e4d2ececbaab9f782c747c642cc1aa0..6a508d24c425270cd52d107156eb0c8226d0282e 100644 GIT binary patch delta 76 zcmeA_%)9Y0?*@lnQxoU>yu8%plFa-(g@U5|q@2`TF5krLRE6TwqErR9%$(HV)S|M~ fB8ALig`(2Dyv)3GMaAae-uB>L#_hqqOg2{lcFG+& delta 42 xcmdmZn798h?*@lnVWH&wyu8%plFa-(g@U5|q@2{;=F;Bw(q6{xrM*lxR{(jw5uN}5 diff --git a/CompiledServer/production/2006rebotted/Main.class b/CompiledServer/production/2006rebotted/Main.class index 8fc698daf13040f1241247ec7f62f7039f20a701..af342052d32ef5dcb9c4e3c576ced2c311bc6459 100644 GIT binary patch delta 69 zcmZ3(xrTFtDT}2r0~>=V10RDJgD`_6gEWH_g94CLVUS@^XOLykW{_hrV321p1ByB@ WC^I-SC^EP(C^2|2s7%gdu>$}ZF9*p0 delta 69 zcmZ3(xrTFtDT^gL0~-S;10MqygD?XxgEWw(z`)O-!XUt)&LGI3%^<{J0F*If5Mgj& W5NB{^5M^*-5M%IQkeHmuVg~>L`v(;O diff --git a/CompiledServer/production/2006rebotted/org/apollo/jagcached/FileServer.class b/CompiledServer/production/2006rebotted/org/apollo/jagcached/FileServer.class index 40b848a92b801f29dc04078a2983f2e755d87234..e39c106ac913870d2ba41c6c72bfc15ef0b0b63a 100644 GIT binary patch delta 2078 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 delta 2664 zcmZuz33yc175-0VxtW`rkW3OnLXdzcfj~m`jXjVANDv4+1{{+iWML9QgaF2&h_tr0 z#XdJs5K<%(+?WTC!4cFhifFCWt<~Dn%`VoqbX7`;=f3gl=hv_EeeeALJ@>wI&%I}v zcd_(TVerDWXU_pBqMZUSOYFdT54PhK4=&)WRY{~pOjPHP*rC8cin@ z8kgOLlN7#!y9t@y{^rhrKQG|#$*bxN1pH0fTCFe8+~Mz5_$t0eDCZZ-(-h61nSy31 znoU)T=4dgOs*O)Q*{R2>%ik8uGK`S(_6tqgwYOP70tH@Gx3;DFTRZ$Z)D|`dH1o;)M*M5BqhN2dIC->ogg$MAU!b8}n@CXhF+90S^ z;SdfBYSSLHE9#()3VZNnMFA={F2$!Axhd|kf;ts-(I&#M2HzHcb5@IQqd#kXXLl9{ zL{T?wHa5j&I(pdAy>a6kZo@7`TWG7GUPaq@ciPTZK|APnL4Atu(3&7sE8LDgg*(tk zNNn?M@#S^+0xfwBJ>9K=7KI>oD%{1U@J;MCTqb55J;!)$WTI=q| zx3&79E5qoF9}|BR0}6NQyMG+Jj05rejK+k;lxid;CL7^|R~+*uEI0dxz3mDToc`X{ z9*p7Y+`*kA10L-WGmm!4Ms~u+FJTvBy0&YN*)JRUsu-nCC>uFxY~+Nn=Q$cS@)2y@ z`}vr2BgNX-dm=xnw%d@dXLRE$m#IN4bq=TRObF}fz6M$8E& zF?fQd+g9e{N#-iL08im*9(nK#POwJ5oN3Rn$q*dR@R+{vZm^D*hG4QmUg~J&eFd+0 zKLn@OWx*YRSalk)COi>HW^pD|1o6xg>T)a$bDTk9404|d zjaQ8DriYMbAtR(sj9e8$=4p%yLFJsmbxs7s7#&7d7-KAq4dZ$Xq1Zx62&ERvLMXRT5kjSfsbNeD zV|oZPEX)jJmWA12RE03dpMtr;`wkAB38AKb(z)r55@)J&R6lAbr8)~LT4g$IUw1Gu}MXBO(qyvcUCX5r*> zB~C|)E7g_i>_^*Vqhmx;aM3;_q`P?+3yUo*Nq3(_L!$f8f0auuEVJkTpBKFNf4tc3 z;{ER@ju}6S>KtJ#*ST<*s;CWbO)zG8iPi^}n`nt(1G82Wl@YWtYd6smj9??vfQcCqbTaEQu_=OXW}8hoBIsdu zn~5#nttK*)Vpf{y)h_U}P4}W`KUt08%=5W@6d-{UXgEr^n`5S5mYiD8_ zW}ybNu^3exg*p6Xku#US8LBz6YB-B(IdkT5k8I$-u%+n7G92Zo5NDBYdM|wjP)J*w diff --git a/CompiledServer/production/2006rebotted/redone/game/content/skills/core/Woodcutting$4.class b/CompiledServer/production/2006rebotted/redone/game/content/skills/core/Woodcutting$4.class index 44d46967238cb96b24d7c3c722027fe4a747b74a..786f2f1e7bd637844f3a877b85d9a0cbb78533a7 100644 GIT binary patch delta 551 zcmXAm$xl;Z6vcnHZSqQcYe7&3Ln#6#Xp|5ME73$n6VZi17n*3S^28XS*syT|1t*;G zbE*o0BPv!)t0F2+J6A6JGmO!NaYMlO;^yR@larj2dwS;$mIS^|PfP-JeCZF2*5}a7 zfdB_NivnHg6;=0cA}uf_57kF@wsC@0OZXMWu&rsw8D_vVc1B-{sBSwU9bax`&7VX?)M>`X?y+nD;i1LIwWA+D23n~_7kt|k{ zMR~G)oXXtBA=42o@KhyDDp)0z=6i6fw~I1UtD9pgA<37pESFqql-aVyVcTSmbjVy8 zkU~jGk&HAIjqA~6qHb#vFAA{P~)VC0)iU?{Q z@j3u1w$3OHP*g<4k&Sy@XyV$1TVsqyd^ecr=G_0De7XP0%^4`{^r-KCk52#yVzNga zs#ejCT`G2CPX<ifF(eqrae{FYrx-mr%@8=F;4I^ubk3t!e7BSr^)dQ!fpJl?moUJ%jHH4T z;|c~ujkP*{71tQoaYMmP#w`pIGPUMdG^`n|x@N?5eJ^{sl- z))f&$k2Qyybi#b0*|Nn3dlgmwot){<_5fw1p}_oi`XqAIZ{?L0qo7fET_q{Znx2dM zk>jR0WAMAwBvfgRp+s05Wm@Spq4dG$rj3$lNFw*&6JnL4l>B0+W1Y1dKJnhMHl9aL z@=_)(CKol(Olqbq3R4bsP%d>*KJ`)oO;RC!AP;?{A}liNqfG}y4VIWUGb-v(4?-ig zW2sp#3mQy28_vub1>RrSLiw(FWwW!aKe5K7%$k_G&?MHwB9gqots#Saa8oe~$PXWt Ih%a3I2h4?~00000 diff --git a/CompiledServer/production/2006rebotted/redone/game/content/skills/core/Woodcutting.class b/CompiledServer/production/2006rebotted/redone/game/content/skills/core/Woodcutting.class index bbf84b841de217b38aa80edfdb77351eae008f83..9e0e79be99299d5495e734df49d426066c54b876 100644 GIT binary patch delta 172 zcmewm^dV@&D+x{|#+wXp8SgNvO#UpfMo^uBjZuSvn^BWNfKiJ)~2FXHRJqBGy zeFjrT0|s+Oqse+wExhIoB8(Oca*UP?N{rT%_e;gH+A+v5+D}%L&XjdxU}AJ;;9+!O z5My)&%DXYB0NGkVF#|@g$;+i*sunT`GZrz(GZr&wFqSYlF_tp;FqScdGnO+XGFC8T V1LX=CYc_9{>EL1XoouIR1OUuW;2FXHRLk3+& zBL-7OV+M0Z)5&^LExc9?B8=7ya*Q?%N{n`s_e;gHIx@&GI!#uT&Xjd!U}AJ*;9+!U z5M%TJ%6l@X0NGkVF#|^5$;+i*s+KSaGnO*QGnO%EFqShoF;+16Fjg{zGgdJqGFCHW V1LX=C>o;$e>EK}um~5wM1OV?bB#i(7 diff --git a/README.md b/README.md index fc937b98..3ba0ba9d 100644 --- a/README.md +++ b/README.md @@ -46,13 +46,20 @@ Step 16: Navigate to your 2006rebotted folder, open `2006Redone file_server` > ` Step 17: Hit OK in the project structure screen after all your JARs are imported: ([Image](https://i.imgur.com/Yv3SX1q.png)) -Step 18: Navigate to the FileServer class and hit Run. It will fail since we need to start it in the right directory: [Image](https://i.imgur.com/LFkr39U.png) +Step 18: Navigate to the FileServer class (`2006Redone file_server/src/org/apollo/jagcached/FileServer.java`), Right Click -> Run. It will fail since we need to start it in the right directory: [Image](https://i.imgur.com/LFkr39U.png) -Step 19: To fix the directory issue, click File Server and hit Edit Configurations at the top: [Image](https://i.imgur.com/lJdBPCs.png) +Step 19: To fix the directory issue, click FileServer and hit Edit Configurations at the top: [Image](https://i.imgur.com/lJdBPCs.png) Step 20: Under Working Directory, add `2006Redone file_server` to the path (on Windows, you may need a \\ for paths instead of a /. Not sure): [Image](https://i.imgur.com/ANkbgBl.png) -Step 21: Repeat for Server & Client. Note for Client, to play locally, you also have to append any 2 arguments to the Arguments section to run it locally (it's a quick hack for now). +Step 21: Navigate to the Server class (`2006Redone Server/src/redone/Server.java`), Right Click -> Run. It will fail since we need to start it in the right directory + +Step 22: To fix the directory issue, click Server and hit Edit Configurations at the top + +Step 23: Under Working Directory, add `2006Redone Server` to the path ([Image]("/home/dr_cookie/Projects/2006rebotted/2006Redone Client/src/Client.java")) + +Step 24: Navigate to the Client class (`2006Redone Client/src/Client.java`), Right Click -> Run. + ### Server source layout