Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Re share Qingyuanzhie Tutorial make APK+Translate game

Initiate Mage
Joined
Sep 18, 2018
Messages
48
Reaction score
15
Hi all..
I want to try making a tutorial on how to create client APK from this post
http://forum.ragezone.com/f857/albatron-mobile-source-client-server-1141377/
tools we need :

1. Unity 5.4.2f2 + Android setup build addons
2. android library for make android platform fast then switch platform
3. CYGWIN + PYTHON for Make Patch Game

Lets Try :
1. download source Qyz from here post http://forum.ragezone.com/f857/albatron-mobile-source-client-server-1141377/
2. exstract file
3. download android library and project from
4. exstract android unity to unityt (replace all)
5. open unity 5.4.2
6. go to Build android and chose build all asset and wait it finish u can see in folder dist/android all folder get manifest file from unity update bundle
7. open file urlconfig.xml, urlbroadcast.lua , resversionurl.lua inside folder dist/android/config
change
Code:
 <UpdateServer value="http://YOUR IP VMWARE OR SERVER/qyz/"/>
<QueryRoleServer value="http://YOUR IP VMWARE OR SERVER:12005/"/>
<BulletionUrl value="http://YOUR IP VMWARE OR SERVER/zxmobile/notice.xml"/>
<AndroidServerListUrl value="http://YOUR IP VMWARE OR SERVER/qyz/android_server_test.txt"/>
<IosServerListUrl value="http://YOUR IP VMWARE OR SERVER/qyz/ios_server_test.txt"/>
<UpdateAppUrl value="http://YOUR IP VMWARE OR SERVER/qyz/updateapp.txt"/>
and change file apk_version.txt-android_version.txt
Code:
android version 686 change to 0
and 
apk version 1.0.6 to 1.0.1
8. install CYGWIN and phtyon for windows if u use windows
9. edit file build_android.sh
From
Code:
#!/usr/bin/env bash
cd `dirname $0`
cd dist
svn up
../genmd5.py android android_resource_md5.txt
ver_file="android_version.txt"
if [ -a $ver_file ]
 then
    ver=`cat $ver_file`
    let ver=$ver+1
else
    let ver=1
fi
echo new version $ver
echo $ver > $ver_file
TO
Code:
#!/usr/bin/env bash
cd `dirname $0`
#cd dist
#svn up
python genmd5.py android android_resource_md5.txt
ver_file="android_version.txt"
if [ -a $ver_file ]
 then
    ver=`cat $ver_file`
    let ver=$ver+1
else
    let ver=1
fi
echo new version $ver
echo $ver > $ver_file
open cygwin and drag file build_android.sh to cygwin (he can generate md5 file. output text in android_source_md5.txt)
10. open file deployAndroid.bat and wait to finish
11. back to unity menu file build setting and player seting
u can see widget on right panel
12. change ur company, produk
13. version is need to 1.0.1 and bundle need to 1 like android_version and apk-version txt file
14. create keystore (u can ask google how to make it)
15. and finaly hit build in menu section wait finish build and test ur own APK

how to make patching client
Code:
upload folder android, apk_version.txt , android_version.txt android_source_md5.txt to ur server. put in directory qyz
sorry i cant make video tutor cos my PC very slowy, but i can help u remot ur pc how to make it if i have more time..
SAMPLE PICTURE







IF THIS POST HELP U.. DONT FORGET TO HIT LIKE..
THANK..:eek:tt:

SIMPLE TUTOR VIDEO EDITING PREFBS INTERFACE GAME


PART 1


PART 2 build APK+patching+editing prefab
becouse video bloked on youtube. im upload it this 2 new link
u can download it
Google
Mega UPloading....
PREFABS EDITOR
pass : aringaso
#SERVER#
U can get server file from this post
Code:
http://forum.ragezone.com/f857/zhuxian-mobile-zhuxian-wanmei-com-1137378/
http://forum.ragezone.com/f857/mobile-game-jade-dynasty-qing-1153298/
http://forum.ragezone.com/f857/zhuxian-mobile-tool-guide-click-1137573/
 
Last edited:
Joined
Oct 20, 2013
Messages
61
Reaction score
14
Waiting this for long time bro, really thank you for best share ever.
Please keep in touch i following you

Thankful <3
 
Initiate Mage
Joined
Sep 18, 2018
Messages
48
Reaction score
15
ur welcome bro
if get trouble, post here .. mybe i can help
 
Joined
Oct 20, 2013
Messages
61
Reaction score
14
Brother OPC

please bro make video about unity.
i got 2 problem

1. if the server got shutdown Problem is: after you start server again , can log-in to game stuck at characters.

2. Edit the apk, every edition include to unity3D i can't do anything. please brother share your experience to edit the content inside every bundle of unity from part to part.

I can't believe you can edit it on Unity like this.
waiting for long time

Thank for keep in touch brother!
 
Initiate Mage
Joined
Sep 18, 2018
Messages
48
Reaction score
15
Brother OPC

please bro make video about unity.
i got 2 problem

1. if the server got shutdown Problem is: after you start server again , can log-in to game stuck at characters.

2. Edit the apk, every edition include to unity3D i can't do anything. please brother share your experience to edit the content inside every bundle of unity from part to part.

I can't believe you can edit it on Unity like this.
waiting for long time

Thank for keep in touch brother!
Post error image here. I now but i need more time and my pc verry slowy to make video. Tool u need editing interfaces is prefab editor.


pass : aringaso

extract it, and copy to /unity/asset/editor folder
open unity in project bar chose asset/editor. u can see prefab editor temple.scene. double click it
go to folder interfaces/prefab/
edit all prefab there with CTR+E or right click ang chos edit prefab. but careful.. dont touch chines font with no Font material. u get BUG interface not show any if u touch it

sorry my bad english..
 
Last edited:
Joined
Oct 20, 2013
Messages
61
Reaction score
14
Yes please i will be waiting for you in anytime.
currently my country is midnight.

will add you on skype for more information on real time.
 
Initiate Mage
Joined
Sep 18, 2018
Messages
48
Reaction score
15
Yes please i will be waiting for you in anytime.
currently my country is midnight.

will add you on skype for more information on real time.
i sent PM for u 2 weak ago. u not read it :)
 
Initiate Mage
Joined
Sep 18, 2018
Messages
48
Reaction score
15
simple prefabs video tutor uploading




only simple tutor for edit prefab interface, im cant build video for a long time, coz my PC very slow..
all about translate data in folder csv/folder/ xlsx file
I swear brother, rarely i check my inbox.......
I swear sorry....
NP.. :) we can share in this forum.. im happy to share for comunity as a can..:):



simpel video tutor add on 1st post :)
 
Joined
Jun 19, 2012
Messages
27
Reaction score
4
Hi all..
I want to try making a tutorial on how to create client APK from this post
http://forum.ragezone.com/f857/albatron-mobile-source-client-server-1141377/
tools we need :

1. Unity 5.4.2f2 + Android setup build addons
2. android library for make android platform fast then switch platform
3. CYGWIN + PYTHON for Make Patch Game

Lets Try :
1. download source Qyz from here post http://forum.ragezone.com/f857/albatron-mobile-source-client-server-1141377/
2. exstract file
3. download android library and project from
4. exstract android unity to unityt (replace all)
5. open unity 5.4.2
6. go to Build android and chose build all asset and wait it finish u can see in folder dist/android all folder get manifest file from unity update bundle
7. open file urlconfig.xml, urlbroadcast.lua , resversionurl.lua inside folder dist/android/config
change
Code:
 <UpdateServer value="http://YOUR IP VMWARE OR SERVER/qyz/"/>
<QueryRoleServer value="http://YOUR IP VMWARE OR SERVER:12005/"/>
<BulletionUrl value="http://YOUR IP VMWARE OR SERVER/zxmobile/notice.xml"/>
<AndroidServerListUrl value="http://YOUR IP VMWARE OR SERVER/qyz/android_server_test.txt"/>
<IosServerListUrl value="http://YOUR IP VMWARE OR SERVER/qyz/ios_server_test.txt"/>
<UpdateAppUrl value="http://YOUR IP VMWARE OR SERVER/qyz/updateapp.txt"/>
and change file apk_version.txt-android_version.txt
Code:
android version 686 change to 0
and 
apk version 1.0.6 to 1.0.1
8. install CYGWIN and phtyon for windows if u use windows
9. edit file build_android.sh
From
Code:
#!/usr/bin/env bash
cd `dirname $0`
cd dist
svn up
../genmd5.py android android_resource_md5.txt
ver_file="android_version.txt"
if [ -a $ver_file ]
 then
    ver=`cat $ver_file`
    let ver=$ver+1
else
    let ver=1
fi
echo new version $ver
echo $ver > $ver_file
TO
Code:
#!/usr/bin/env bash
cd `dirname $0`
#cd dist
#svn up
python genmd5.py android android_resource_md5.txt
ver_file="android_version.txt"
if [ -a $ver_file ]
 then
    ver=`cat $ver_file`
    let ver=$ver+1
else
    let ver=1
fi
echo new version $ver
echo $ver > $ver_file
open cygwin and drag file build_android.sh to cygwin (he can generate md5 file. output text in android_source_md5.txt)
10. open file deployAndroid.bat and wait to finish
11. back to unity menu file build setting and player seting
u can see widget on right panel
12. change ur company, produk
13. version is need to 1.0.1 and bundle need to 1 like android_version and apk-version txt file
14. create keystore (u can ask google how to make it)
15. and finaly hit build in menu section wait finish build and test ur own APK

how to make patching client
Code:
upload folder android, apk_version.txt , android_version.txt android_source_md5.txt to ur server. put in directory qyz
sorry i cant make video tutor cos my PC very slowy, but i can help u remot ur pc how to make it if i have more time..
SAMPLE PICTURE







IF THIS POST HELP U.. DONT FORGET TO HIT LIKE..
THANK..:eek:tt:

SIMPLE TUTOR VIDEO EDITING PREFBS INTERFACE GAME

PREFABS EDITOR
pass : aringaso
#SERVER#
U can get server file from this post
Code:
http://forum.ragezone.com/f857/zhuxian-mobile-zhuxian-wanmei-com-1137378/
http://forum.ragezone.com/f857/mobile-game-jade-dynasty-qing-1153298/
http://forum.ragezone.com/f857/zhuxian-mobile-tool-guide-click-1137573/


very nice, ty
 
Initiate Mage
Joined
Sep 18, 2018
Messages
48
Reaction score
15
@oprekpc
Can you play on Unity 3D itself?
nope. im not have skill coding.. i think it work if we can edit this code
Code:
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using Game.Platform;
using UnityEngine;
using System.Net;
using Aio;
using SLua;

namespace Game
{
    class ServerListManager
    {
        //public static string SrcURL = "http://124.193.167.190/lxmobile/server/";
        public static int MaxRetryNum = 2;

        private static string androidContent = "";

        private static string iosContent = "";

        private static bool androidDone = false;

        private static bool iosDone = false;

        private static readonly ServerListManager m_Instance = new ServerListManager();
        public static ServerListManager Instance { get { return m_Instance; } }

        private static Dictionary<int, int> serversState = new Dictionary<int, int>();

        private static Dictionary<int, ServerLoad> serverLoads = new Dictionary<int, ServerLoad>();

        private bool _StateAltered = false;

        public string this[UnityEngine.RuntimePlatform platform]
        {
            get
            {
                if(UnityEngine.RuntimePlatform.IPhonePlayer == platform)
                {
                    return iosContent;
                }
                else
                {
                    return androidContent;
                }
            }
            set
            {
                if(UnityEngine.RuntimePlatform.IPhonePlayer == platform)
                {
                    iosContent = value;
                }
                else
                {
                    androidContent = value;
                }
            }
        }


        public bool DownloadDone
        {
            get
            {
                return androidDone&&iosDone;
            }
        }

        public bool StateAltered
        {
            get
            {
                 lock(this)
                {
                    return _StateAltered;
                }
            }
        }

        public Dictionary<int,int> GetServerState()
        {
            lock(this)
            {
                _StateAltered = false;
                return serversState;
            }
        }

        public IEnumerator GetServerList()
        {
            //yield return new WaitForSeconds(1.5f);

            //yield return Main.Instance.StartCoroutine(DownloadServerList());

            //downloadDone = true;
            DownloadServerList(3,UnityEngine.RuntimePlatform.Android);
            DownloadServerList(3,UnityEngine.RuntimePlatform.IPhonePlayer);
            yield break;
        }

        private void DownloadServerList(int retry,UnityEngine.RuntimePlatform platform)
        {
// #if UNITY_ANDROID
//             string url = Game.ServerUrlConfig.Instance.AndroidServerlistUrl;
// #elif UNITY_IPHONE
//             string url = Game.ServerUrlConfig.Instance.IosServerlistUrl;
// #else
//             string url = Game.ServerUrlConfig.Instance.AndroidServerlistUrl;
// #endif
            string url = "";
            if(platform == UnityEngine.RuntimePlatform.IPhonePlayer)
            {
                url = Game.ServerUrlConfig.Instance.IosServerlistUrl;
            }
            else
            {
                url = Game.ServerUrlConfig.Instance.AndroidServerlistUrl;
            }
            try
            {
                // Debug.LogError("retry {0} = " + retry.ToString(),platform==UnityEngine.RuntimePlatform.IPhonePlayer?"ios":"android");
                Debug.LogError(string.Format("retry {0} = {1}",retry.ToString(),platform.ToString()));
                //throw new Exception("throw a exception");
                HttpWebRequest httpWebRequest = (HttpWebRequest)HttpWebRequest.Create(new System.Uri(url));
                httpWebRequest.Timeout = 15 * 1000;
                httpWebRequest.KeepAlive = false;
                HttpWebResponse httpWebResponse = (HttpWebResponse)httpWebRequest.GetResponse();
                using (Stream stream = httpWebResponse.GetResponseStream())
                {

                    StreamReader sr = new StreamReader(stream);
                    this[platform] = sr.ReadToEnd();
                    sr.Close();
                    if(platform == UnityEngine.RuntimePlatform.IPhonePlayer)
                    {
                        Debug.LogError("download ios serverlist done");
                        iosDone = true;
                    }
                    else
                    {
                      Debug.LogError("download android serverlist done");
                      androidDone = true;
                    }
                }
            }
            catch(Exception e)
            {
                Debug.LogError("down load failed,error = " + e.Message);
                if(retry>0)
                {
                    DownloadServerList(retry - 1,platform);
                }
                else
                {
                    GameObject DlgResourceUpdate = GameObject.Find("/UI Root (2D)/UI_Root/DlgResourceUpdate");
                    UIGroup[] allgroups = DlgResourceUpdate.GetComponentsInChildren<UIGroup>(true);
                    UIGroup groupAlert = new UIGroup();
                    for(int i=0;i<allgroups.Length;++i)
                    {
                        if (allgroups[i].name.EndsWith("Alert"))
                        {
                            groupAlert = allgroups[i];
                            break;
                        }
                    }
                    groupAlert.gameObject.SetActive(true);
                    UILabel[] alllabels = DlgResourceUpdate.GetComponentsInChildren<UILabel>(true);
                    UILabel labelAlert = new UILabel();
                    for(int i=0;i<alllabels.Length;++i)
                    {
                        if (alllabels[i].name.EndsWith("Content"))
                        {
                            labelAlert = alllabels[i];
                        }
                    }
                    labelAlert.text = LauncherString.Instance.Get("ServerListFailed");
                    UIButton[] allbuttons = DlgResourceUpdate.GetComponentsInChildren<UIButton>(true);
                    UIButton buttonSure = new UIButton();
                    UIButton buttonReturn = new UIButton();
                    for(int i = 0; i < allbuttons.Length; ++ i)
                    {
                        if (allbuttons[i].name.EndsWith("Sure"))
                        {
                            buttonSure = allbuttons[i];
                        }
                        else if(allbuttons[i].name.EndsWith("Return"))
                        {
                            buttonReturn = allbuttons[i];
                        }
                    }
                    buttonSure.gameObject.SetActive(false);
                    Vector3 pos = buttonReturn.gameObject.transform.localPosition;
                    buttonReturn.gameObject.transform.localPosition = new Vector3(0, pos.y, pos.z);
                    //labelSure.gameObject.onClick += (GameObject go) => { Application.Quit(); }
                    UIEventListener.Get(buttonReturn.gameObject).onClick = (GameObject go) => { Application.Quit(); };
                }
            }
        }


        public void AddGroupServers(int [] serverids, string [] hosts, int [] ports)
        {
            for (int i = 0; i < serverids.Length;++i)
            {
                AddTest(serverids[i], hosts[i], ports[i]);
            }
        }
        private void AddTest(int serverid,string host,int port)
        {
            if(!serverLoads.ContainsKey(serverid))
            {
                serverLoads.Add(serverid, new ServerLoad(serverid, host, port,
                        (sid, load) =>
                        {
                            lock(this)
                            {
                                _StateAltered = true;
                                serversState.Add(sid, load);
                            }
                            //ServerStateCallback.call(sid, load);
                        })
                    );
                serverLoads[serverid].TryConnect();
            }
        }

        public void ClearServersState()
        {
            _StateAltered = false;
            serversState.Clear();
            serverLoads.Clear();
        }
    }
}
i try play from unity only can get login screen cant login as well.

and change that ip to my own server still cant login.
and try to change server.lua on script to my vmware..
not work
Code:
--region *.lua
--Date
--此文件由[BabeLua]插件自动生成

--endregion

local serverlist = {
    {
        name="OPC",
        test=1,
        isNew=true,
        addresses=
        {
              {host="192.168.1.130",port=10011},
              {host="192.168.1.130",port=10013},
              {host="192.168.1.130",port=10014},
        },
    },
}

local yhlm_serverlist = {
    {
        name="allianceServer1",
        test=1,
        isNew=true,
        addresses=
        {
              {host="192.168.1.130",port=10011},
              {host="192.168.1.130",port=10013},
              {host="192.168.1.130",port=10014},
        },
    },
}

local yingyongbao_serverlist = {
    {
        name="tentcentServer1",
        test=1,
        isNew=true,
        addresses=
        {
              {host="192.168.1.130",port=10011},
              {host="192.168.1.130",port=10013},
              {host="192.168.1.130",port=10014},
        },
    },
}

local dhf_serverlist = {
    {
        name="策划服",
        test=1,
        isNew = true,
        addresses=
        {
            {host="10.241.69.16", port=10063},
        }
    },
}

local recommendserver = 2

local logserver = {host="10.12.3.122", port=10031}

return
{
    logserver = logserver,
    serverlist = serverlist,
    yhlm_serverlist = yhlm_serverlist,
    yingyongbao_serverlist = yingyongbao_serverlist,
    dhf_serverlist = dhf_serverlist,
}
i need help about coding. coz im not have skill :(
this log i get from unity
Code:
link close
UnityEngine.Debug:Log(Object)
Aio.Link:Close() (at Assets/Source/Aio/Link.cs:150)
Aio.Session:Connect(String, Int32, Int32, Int32, Int32, Int32, ICallback) (at Assets/Source/Aio/Session.cs:111)
Lua_Aio_Session:Connect(IntPtr) (at Assets/Slua/LuaObject/Custom/Lua_Aio_Session.cs:37)
LuaInterface.LuaDLL:lua_pcall(IntPtr, Int32, Int32, Int32)
SLua.LuaFunction:pcall(Int32, Int32) (at Assets/Slua/Slua_Managed/LuaState.cs:209)
SLua.LuaFunction:innerCall(Int32, Int32) (at Assets/Slua/Slua_Managed/LuaState.cs:219)
SLua.LuaFunction:call(Object) (at Assets/Slua/Slua_Managed/LuaState.cs:257)
<SetClick>c__AnonStoreyA2:<>m__2DD(GameObject) (at Assets/Source/Lua/UIEventListenerHelper.cs:84)
UIEventListener:OnClick() (at Assets/NGUI/Scripts/Internal/UIEventListener.cs:53)
UnityEngine.GameObject:SendMessage(String, Object, SendMessageOptions)
UICamera:Notify(GameObject, String, Object) (at Assets/NGUI/Scripts/UI/UICamera.cs:1509)
UICamera:ProcessRelease(Boolean, Single) (at Assets/NGUI/Scripts/UI/UICamera.cs:2393)
UICamera:ProcessTouch(Boolean, Boolean) (at Assets/NGUI/Scripts/UI/UICamera.cs:2443)
UICamera:ProcessMouse() (at Assets/NGUI/Scripts/UI/UICamera.cs:1894)
UICamera:ProcessTouches() (at Assets/NGUI/Scripts/UI/UICamera.cs:2008)
UICamera:Update() (at Assets/NGUI/Scripts/UI/UICamera.cs:1695)

mybe other ppl can help..
im sure about source script in folder code/scripts and /unity/asset/source/
and this serverlist.cs log from unity
Code:
download android serverlist done
UnityEngine.Debug:LogError(Object)
Game.ServerListManager:DownloadServerList(Int32, RuntimePlatform) (at Assets/Source/ServerListManager.cs:144)
Game.<GetServerList>c__Iterator22:MoveNext() (at Assets/Source/ServerListManager.cs:99)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
Game.Client:Update() (at Assets/Source/Client.cs:377)
Main:Update() (at Assets/Source/Main.cs:56)

i can learn it to get it work with not skill coding coz only google .. but not sure for best ide
 
Last edited:
Joined
Sep 15, 2009
Messages
30
Reaction score
1
i put build_android.sh on cygwin and it marks me this error there is a solution?
$ /cygdrive/c/trunk/dist/build_android.sh
Traceback (most recent call last):
File "genmd5.py", line 43, in <module>
md5file = file(output, "w+")
NameError: name 'file' is not defined
new version 8
 
Last edited:
Initiate Mage
Joined
Sep 18, 2018
Messages
48
Reaction score
15
I have error please is possible help me I give build_android.sh and error
u have python installed on u system? and have configure path environment ?
Code:
workdir = "."
output = "md5.txt"
md5file = None

def md5sum(fname):
    return hashlib.md5(open(fname, 'rb').read()).hexdigest()

def collectmd5(fname, lines):
    if os.path.isdir(fname):
        files = os.listdir(fname)
        for f in files:
            if f[0] != '.':
                collectmd5(fname + "/" + f, lines)
    elif os.path.isfile(fname) and os.path.splitext(fname)[1][1:] != "meta" and os.path.splitext(fname)[1][1:] != "manifest":
        newFileName = fname
        if fname.find(workdir) == 0:
            newFileName = fname[len(workdir)+1:]
        lines.append("%s,%32s,%d\n" % (newFileName, md5sum(fname), os.path.getsize(fname)))

if __name__ == '__main__':
    argc = len(sys.argv)
    if argc == 0:
        print("argv resource_direcory miss")
        sys.exit(1)
    workdir = sys.argv[1]
    if len(sys.argv) > 2:
        output = sys.argv[2]
    md5file = file(output, "w+")
    lines = []
    collectmd5(workdir, lines)
    with open(output, 'w') as outputf:
        outputf.writelines(lines)
make sure not touch genmd5.py scripts
 
Initiate Mage
Joined
Sep 18, 2018
Messages
48
Reaction score
15
python it is installed on c: \ and cygwin c: \

i don't touch genmd5.py
run cmd command type python
if u get like this.. u have already installed
 
Joined
Oct 20, 2013
Messages
61
Reaction score
14
my bro please make full video after edit and save how to replace the file to the apk....
before i just can translate on the .txt .lua only

so please bro make full video tutorial to edit the prefab and transfer it to apk and make it work.
Thank you in advance.
 
Initiate Mage
Joined
Sep 18, 2018
Messages
48
Reaction score
15
Link is dead

New link here :

@beyastard how are u bro :) since 2009 im forget my account i love PW u make best tool with ronny :)



my bro please make full video after edit and save how to replace the file to the apk....
before i just can translate on the .txt .lua only
so please bro make full video tutorial to edit the prefab and transfer it to apk and make it work.
Thank you in advance.
a long process, consuming big videos. by making it all, it requires a strong PC. I only use AMD A10 6GB RAM.
but I will try to make it as well as setting up the server on VBox
 
Back
Top