From 864f0036773dc40abb8f676f7f9defb2f28cfeea Mon Sep 17 00:00:00 2001 From: Karrar Date: Mon, 7 Jul 2025 14:44:25 +0300 Subject: [PATCH] Fixed code gen issue for RPC methods where the only parameter is `RpcContext`. --- Netick/Editor/Netick.CodeGen.dll | Bin 53248 -> 53248 bytes Netick/Editor/Netick.Unity.Editor.dll | Bin 62976 -> 62976 bytes Netick/Editor/Netick.Unity.Pro.Editor.dll | Bin 8192 -> 8192 bytes Netick/Editor/Unity.Netick.CodeGen.dll | Bin 24064 -> 24064 bytes Netick/Runtime/Netick.Pro.dll | Bin 31232 -> 31232 bytes Netick/Runtime/Netick.Unity.Pro.dll | Bin 18432 -> 18432 bytes Netick/Runtime/Netick.Unity.dll | Bin 147968 -> 147968 bytes Netick/Runtime/Netick.Unity.xml | 6 +++--- Netick/Runtime/Netick.dll | Bin 268800 -> 268800 bytes Netick/Runtime/Netick.xml | 21 ++++++++++++++++++++- package.json | 2 +- 11 files changed, 24 insertions(+), 5 deletions(-) diff --git a/Netick/Editor/Netick.CodeGen.dll b/Netick/Editor/Netick.CodeGen.dll index cc82c8fadd0d76f6cd061854f11a17fbe9bda680..4f86817d9b47dfb21b43090aff7930b776cb9945 100644 GIT binary patch delta 1333 zcmYk+ZA=_R7zgm@zkA0!H*+X>v>+Vi3hf%KZvua|Di6(%pY3myp6a64UYkXvl&$r|w=pWX+iCleG_+D=jcXVANO6s~PZW$}^;|^C`dmtk*?&uyOM~~MS55EEmCw=yY6&-5_tfnf1}3oULq;$}PR$a z@^ehZkZ9e^?sv2@C;qmi(d_zG7LU5Uc4oGnh!H70=>?XAX{q+OlPm>8kD8SleU$zd z<8X9F?1@_bS(b+B$87z3`&pKbU60$kmi7hnphN0d{&}_ry_Ph3HvfB;g+ZA;nRJ=u zp#BMa-r=N0mIr#u)`=DC#Z<^@RGPv-usymP-h^v#Tk59< z`ZCpzPN`|t#{+mtYC`exB8*9WNjPImQQ`A*~IZO5#R^l(24I#iQu@aM2 zA?|6jnMgl;PaS?wU{&-_l8{h%Lmse|9FhigBzXkh2p!h zjmC_b!^uF{m_71CHQ)Kmg}GO!mhSna_D1Qn@p_XnVf@NVu3o(I4xzD05ie`5S~(}K zN%Ph10r7L2xC+EICbBVoW?~(0DSbD!?&prJBUwEa^+&pM^n}ShrSjqNR{79edV{BV za7SuS`9P_^Zc$8M9d6MeIHUn3_TI}xYc;PF(AJ>@2enSbGW$o# zydLFuiR^S#&y<1{(zrugRe1{$ZB^9`p19A0g2^l?|<_Ei1v=n?20wY$Bs$kRsWP736C*#xcK zXh@~sGAh`0de2lR^`wN^KlF>xu7xYvG+i@wAom;IcZP2KuR1nE=}pEe-Sh!_g3VHc zP`aa$C8%MOk*PFNaLF-8pT=xOcF~V+I?|P8|O+p{K+L?@c{+34eq^*(J z@vbSAE-h|ksi0;nGq#5uiXST$wLbdoL%R<*S zOV{o^$+D5rVre|<49i7<(5uDYvV25LskFQJd*;C!k?n9^WeZ_@)~b8iIn9c2dWWTR z-ZaGrYBi+h4i{u9B^YicqyIdAHbd)3OK{m#oc}c0d}{u4Mxm80L6NCA-9*T~1P=)< zl0)`;uvIA6wm?~mcv77oheehy6)JutxOji7y&sO}Z@2J6F%_pe`ZB|hBB38;pAx`> zLIaXdDMho;De@_0*e|pJKILA#BlJ6;xeQ+mP4iXm!zt}_LS#n~P^$4+QWnBjrebmW90_*_ zBVwvUPPl6@mNYetNs$#v33nLs3&uvRQ;UF^vKmHkm#H|-@{LANos>nfLS%m+s6?^O z%8JcD&~j`N;ZLYhmZLqXuoj)V+8lPR2+f&E*C*xsi(ew7WfLh(x z{zHxOXZT-t|AO+>eV&YlGTR-m>5jgON>1gz)4viPtC#q$jdiE^2WVG2jlw`EhGdha@V Ka`TGk5qtm-pE%F} delta 114 zcmZp8!`$$Oc|r$^f6aqw8+(rLWi;9xvX6&VK=-ryy=9KyoflpG`?EbMTY7WBVIO4{ zRppEOCLeefAn2|@y9D-_tZ;q*JVMvySi%CYGcB3Ogsi5DnxH x;4$y?nddn_X=>ot3}y4l9%8xj5V4amF_7Bj`~7GCzQB|}RW{Xc^A#~2P5>3xEZqPA diff --git a/Netick/Editor/Unity.Netick.CodeGen.dll b/Netick/Editor/Unity.Netick.CodeGen.dll index 5001fa85a5121a3df1722c09b15924c24a5f9baf..62170d1635e7ba5ebab15846ab7e50e72753f929 100644 GIT binary patch delta 107 zcmZqJ!`QHgaY6^nw#gAcH}({G34}LD?R_6i$ D-+L~R delta 107 zcmZqJ!`QHgaY6^nE)nVV8+!`81lZ2)E!Wv-;?da^`dYW`xawve?+5HGIa3dRp8O#w zK!AOj%+B?FZ(aJjVs#TIMQxuP5S*z16`TSS1gb7B-gGh0wPjbW(EGhbn{NiIa{&Mh CFEL{P diff --git a/Netick/Runtime/Netick.Pro.dll b/Netick/Runtime/Netick.Pro.dll index da062b644df638fc99d2a2f9bbaee87517c95a1d..b660059cd1a0259188eec5e93d321cd86ff7943c 100644 GIT binary patch delta 107 zcmZqp!r1VIaY6@+S$@f)jXhsd1QNV!EHbhmIkw(2+_-}|?b+rDsTVj|cJz5anVgaz zATarks?($uNiK7rX6$n6u2!FXBtKpODwqNj1gcIs>CY1OsJ!IUzdgH?H#-;X C=rid6 delta 107 zcmZqp!r1VIaY6^nW*(RJjXhsd1WtvWo2V20*QKFY`|`T4u_~JaY6@6nX~o$jXeu21@>ppD>xP;?=^Y*({(cc7hKwGV|9ZSEInDm!30w} I#$gFN08F$X1ONa4 delta 70 zcmZpez}PT>aY6^nqHO-J8+#U53dBZ9PImIS@7wMCx@xM~d$r9rRySC|(vu||OfaQm I9G0*H00(0o8UO$Q diff --git a/Netick/Runtime/Netick.Unity.dll b/Netick/Runtime/Netick.Unity.dll index 92688b90a95cd6b2ba51c5b04731c204317a6c05..7b126bf763b95abb848036d31f7f7a5e9f986f50 100644 GIT binary patch delta 122 zcmZo@;cRH(oY2AY^x~# delta 122 zcmZo@;cRH(oY2AYZe8@$#-6P`j1o@;l8im9zUXXmUC76Ht$*Qiq3v6qG75?@8f`!J zn^8)O<$?F+In$r0G6e`6{bhQ4ZepLyS}n(R2b-2X(_Pe<5*47LCNNQu`ZU+}IhA6o Q9Ts_5@@zk<#$+uG0GX9D`2YX_ diff --git a/Netick/Runtime/Netick.Unity.xml b/Netick/Runtime/Netick.Unity.xml index 8626e11..61f5b33 100644 --- a/Netick/Runtime/Netick.Unity.xml +++ b/Netick/Runtime/Netick.Unity.xml @@ -193,7 +193,7 @@ - Returns the NetworkPlayerId of the input source of this object. This is synced for every client. + Returns the NetworkPlayerId of the input source of this object. This is synced to every client. @@ -398,7 +398,7 @@ - Returns the NetworkPlayerId of the input source of this object. This is synced for every client. + Returns the NetworkPlayerId of the input source of this object. This is synced to every client. @@ -832,7 +832,7 @@ - The local player (this) player of this sandbox instance. + The local player of this sandbox instance. diff --git a/Netick/Runtime/Netick.dll b/Netick/Runtime/Netick.dll index d6cf1a1e1006ba687f964dead37ecff54f10d38d..58d10bdd66b08574e19006c6390ee322d028443f 100644 GIT binary patch delta 1925 zcmdUve@v8R9KfIN_j!*ykdyPyFw9d5^v==*?}P(Pd*SZTO-yE)X^z>gvd~qV=xkF6 zrsC!rL-8wV$vUZ7(?pFoA#oFJO^Qe|f3(&F0}+)eNERwR&&zq*`X~Qvd-wf3pYM<7 zdEWPrx9E_i=#ZtXR9QUrVr9+dTl-xfGltG*fJKdZOBFHpgOxI4Gg#3%U3g2?zv@*7 zwVE|G`61R&d$7`)f(jN&ZHY--v4kAzJzwN#UnAO&`7c?1@KYVGaq zFbNXElO|_u1dEt7)6^19IW1zdl|k)jCB%3N7deOJ<}#b{h62pOmgNjtuWs!QX(Nq& zxr;VRqq|E*$g0p&@@xVI!f%UxmYc1Fbzd>9* z&Jq)oO)?%HCS&Pv8S80B7fgYAYU%xOi2ko^i|*cK{sASO!2E#`+ChJ|$Qs($t(*97V)R{*;edjA@v z<8h>ul6R3Jdc=VXN$r7&@ZazD(A(b-m)JsU1+bY@-3@X0Ag6voNTTFkQC&(aB+6-z z05&Sr(JPvok)G%iO(t5>C#tVdrNoDHS^&>-vfdQMNXoe>zWV?8`UB#n(rJ@KKAn)* zNpM@d;`a*8xGlcJS)_Lb!Af6>G%Tm<5}(rKJEEzL)0=lh(MHum!Aln;3dnv};1haD z0M972?XK9U4e691j3M)&sIH>f5;e450IzU5HYkdAx+Al5E7C9n3M&dk++R_H8F)dd zxQ6L?1?fq^beN#M3fQV(pQ5ElU@h7TFgPKWZ5AjL7DI0gKgD-!d4g^liG zhWPh@F}C4RTJfFx8-p`!t?q9PNntzZK557a8?a`>3t{`+-E3GBHUs<7P#U&EcFM5p z0c$nXh7FMYq>XzHS6i_kwe3sswaA!t*yPz^T=c8FQwggeb3RUlby{jZil4_kO)fbv>(E?+mCX^2pQ~AV;)oj1`GeYSV=MzMsC?uQ6Lgv~13IT< zmV_7#u~Fv&ZOPZT>1oZ;jr(w>$L;Z{o~)!yuPb$0n$Mq->Pz+d{mGdwk1H$1m6esI zy3^F8OpiCs?@Gx`PWGwEX+E#pI)%Roq)^*;rjQeb-ZM*&nF`quh_Z{<2oK zo0ml?rPksiE%6I}eYmyEWGyZmQF2i{c5Crg@sOi|Pl_%x!~8>XK==Iv_OFScynxd6UbRb%Z(+--Ioany+>sMjl delta 1943 zcmdUvdr(wW7{JeW?!7D^k9Ai!DN)DOc5NV8m&XF79hSvtq-3y~Y=~*rO^C#FAg9bw z$k&W1Df9{2OtxS-X31!ru_-7Sn?}n>!ZNeQN21^(z*n(q=UlecrhoF!X6}5y^ZOp> zoO^d>m+m$$-EFK{r9N3wd$@VcwVh5sA=LgLkjT5{GZ8Hf@QyA2s&CoF zn_q55yBF5-Rxji@Cp7-uV~<&psI$a2Sih> zg5xiVrd%w%B&vR_m-q#{1ZbR!rpu!E2xS6K zs^B3(D8%TSqRKH>q92zF&_osY-W0`W@Vd;dt4pVu@OfQ@h<$aMqa>nyBD? zKr>)2_W|uxX%6KXVYG#sTd4nD3;9OGRMHl|L#$g+iJ+5VC3i;9Qcoq2z1p~CKnPhe z3g@*a@73%f`#SkcEh%K3$zN%%kR3_huRR_zAP2R=ko}f?P+JxZ>)w7d9x5f_bQ$1Yf^O;|# zm$mDxU?+91WQu8M&T1kvMB{em))SvGug-6o-%Lm*9B0Z1$*as7q+92htZJQ}EPs&g zL*#{@($)7*b1|0UNlWsubaxJOrKP8*Pf2mPS+>*RaHcyPInESkl7qQCSy`^s)ND@@ zb4+nMT`7)icT!54$HPzc(4CZbou}JdjHBH~?>!UWn6agJLw??gneX$OMx`cFU1O?x zolp2k>5DPdhMTHthgY8xPrRvWqj=EPsw70!YU6;KmZ&m`MXibjYWPd7%An0M5{N2( z8X&W1L~dEJZ(&KfZw}ys(@F&fPAi+$pQE}4adWpa)41>LvF7pS^;ye*a{p*a_`MJV z-OAJBg4u=pf?3hOxVeD6c67A0v8`-a0bg`R$(%59#G}6Q5^w3NxpT|rFZ8+R&+$$7 QmEng`>N&nETFs043$OKJ3IG5A diff --git a/Netick/Runtime/Netick.xml b/Netick/Runtime/Netick.xml index da0325b..72631ef 100644 --- a/Netick/Runtime/Netick.xml +++ b/Netick/Runtime/Netick.xml @@ -352,6 +352,15 @@ typically for the purpose of optimizing network traffic by only sending relevant updates to clients. + + + Use this attribute on a property to make it networked. It will be synchronized across the network. + * Use the parameter "size" to specify the max capacity of a network array/collection. + * Use the parameter "relevancy" to specify who will receive this variable. + * Use the parameter "precision" to specify the precision of a float-based variable. + * Use the parameter "ensureSafety" to specify if it will always be safe to access this variable (for instance, when Netick is not running). + + Use this attribute on a method you want to call when a specific property value changes. Example: [OnChanged(nameof(PropertyName)] @@ -359,7 +368,7 @@ - Use this attribute on any method you want to make an RPC. Should have the return type of void. + Use this attribute on any method you want to make an RPC. Must have the return type of void. * Use the parameter "source" to specify who is allowed to send this RPC. * Use the parameter "target" to specify who is allowed to receive and execute this RPC. * Use the parameter "isReliable" to specify if this Rpc should be reliable or not, meaning it won't be lost (due to packet loss). @@ -868,6 +877,16 @@ Manages interest groups and area of interest (AoI) layers. + + + Contains information about an RPC call. + + + + + The source of this RPC call (the player that originally called it). + + Internal method. Never call this. diff --git a/package.json b/package.json index 874b5ae..7c501d3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "com.karrar.netick", - "version": "0.14.12", + "version": "0.14.13", "displayName": "Netick", "description": "A networking solution for Unity", "unity": "2021.3",