fix
4
.gitignore
vendored
@ -4,3 +4,7 @@
|
||||
*.lock
|
||||
*target
|
||||
*.db
|
||||
**.DS_Store
|
||||
*.DS_Store
|
||||
/scpt/*.jpeg
|
||||
/scpt/*.png
|
||||
|
BIN
img/ue-2024-10-31-151413.png
Normal file
After Width: | Height: | Size: 960 KiB |
BIN
img/ue-2024-11-18-220316.png
Normal file
After Width: | Height: | Size: 1.5 MiB |
BIN
img/ue-2024-11-18-220359.png
Normal file
After Width: | Height: | Size: 510 KiB |
BIN
img/ue-2024-11-18-220524.png
Normal file
After Width: | Height: | Size: 964 KiB |
BIN
img/ue-2024-11-18-220605.png
Normal file
After Width: | Height: | Size: 1.1 MiB |
BIN
img/ue5.5-2024-12-02 093031.png
Normal file
After Width: | Height: | Size: 427 KiB |
BIN
img/ue5.5-2024-12-02 093116.png
Normal file
After Width: | Height: | Size: 372 KiB |
BIN
img/ue5.5-2024-12-02 093118.png
Normal file
After Width: | Height: | Size: 1.5 MiB |
BIN
img/ue5.5-2024-12-02 093119.png
Normal file
After Width: | Height: | Size: 225 KiB |
BIN
img/ue5.5-2024-12-02 093130.png
Normal file
After Width: | Height: | Size: 255 KiB |
125
lexicons/ai/syui/game/user.json
Normal file
@ -0,0 +1,125 @@
|
||||
{
|
||||
"lexicon": 1,
|
||||
"id": "ai.syui.game.user",
|
||||
"defs": {
|
||||
"main": {
|
||||
"type": "record",
|
||||
"key": "tid",
|
||||
"description": "Record containing a game user.",
|
||||
"input": {
|
||||
"encoding": "application/json",
|
||||
"record": {
|
||||
"type": "object",
|
||||
"required": [
|
||||
"did",
|
||||
"createdAt"
|
||||
],
|
||||
"properties": {
|
||||
"aiten": {
|
||||
"type": "integer",
|
||||
"default": 0
|
||||
},
|
||||
"limit": {
|
||||
"type": "bool"
|
||||
},
|
||||
"login": {
|
||||
"type": "bool"
|
||||
},
|
||||
"did": {
|
||||
"type": "string"
|
||||
},
|
||||
"handle": {
|
||||
"type": "string"
|
||||
},
|
||||
"gender": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"none",
|
||||
"male",
|
||||
"famale"
|
||||
]
|
||||
},
|
||||
"charactor": {
|
||||
"type": "object",
|
||||
"enum": [ "ai", "chinese", "manny", "quinn", "phoenix", "kirin", "leviathan", "wyvern", "cerberus", "dragon", "kitsune", "pegasus" ],
|
||||
"properties": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"season": {
|
||||
"type": "integer",
|
||||
"default": 0
|
||||
},
|
||||
"group": {
|
||||
"type": "string",
|
||||
"default": "origin"
|
||||
},
|
||||
"img": {
|
||||
"type": "uri",
|
||||
"default": "https://cdn.bsky.app/img/feed_thumbnail/plain/did:plc:4hqjfn7m6n5hno3doamuhgef/bafkreie34pjuc6coenzcdwrgrh4fbacq7bkhsz263g5vpbsqxwaz37kkwy@jpeg"
|
||||
},
|
||||
"lv": {
|
||||
"type": "integer",
|
||||
"minimum": 1,
|
||||
"maximum": 7,
|
||||
"default": 1
|
||||
},
|
||||
"exp": {
|
||||
"type": "integer"
|
||||
},
|
||||
"hp": {
|
||||
"type": "integer",
|
||||
"maximum": 255,
|
||||
"default": 0
|
||||
},
|
||||
"attach": {
|
||||
"type": "integer",
|
||||
"minimum": 1,
|
||||
"maximum": 255,
|
||||
"default": 0
|
||||
},
|
||||
"attach_post": {
|
||||
"type": "integer",
|
||||
"default": 0
|
||||
},
|
||||
"critical": {
|
||||
"type": "integer",
|
||||
"minimum": 0,
|
||||
"maximum": 255,
|
||||
"default": 0
|
||||
},
|
||||
"critical_d": {
|
||||
"type": "integer",
|
||||
"minimum": 0,
|
||||
"maximum": 255,
|
||||
"default": 0
|
||||
},
|
||||
"rank": {
|
||||
"type": "integer",
|
||||
"minimum": 0,
|
||||
"maximum": 7,
|
||||
"default": 0
|
||||
},
|
||||
"mode": {
|
||||
"type": "integer",
|
||||
"minimum": 0,
|
||||
"maximum": 3,
|
||||
"default": 0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"createdAt": {
|
||||
"type": "string",
|
||||
"format": "datetime",
|
||||
"description": "Client-declared timestamp when this post was originally created."
|
||||
},
|
||||
"updatedAt": {
|
||||
"type": "string",
|
||||
"format": "datetime"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
169
scpt/character.zsh
Executable file
@ -0,0 +1,169 @@
|
||||
#!/bin/zsh
|
||||
|
||||
function download_character_icon(){
|
||||
|
||||
t=(
|
||||
"https://sketchfab.com/3d-models/super-9a80a6d6cf6f4b08906505c7f945d3ce"
|
||||
)
|
||||
|
||||
t=(
|
||||
"https://sketchfab.com/3d-models/cerberus-quirky-series-4379b571b5a440119d1ebaddb0711142"
|
||||
"https://sketchfab.com/3d-models/chinese-dragon-quirky-series-a383d3cf5b004978ac620806558b2924"
|
||||
"https://sketchfab.com/3d-models/dragon-quirky-series-9a0989aae9b84ebdade28e84a0702a71"
|
||||
"https://sketchfab.com/3d-models/kirin-quirky-series-b280c8bc5b87471eac1068acc91fdce1"
|
||||
"https://sketchfab.com/3d-models/kitsune-quirky-series-4fc8b2ade43f4d4bb8a8e6e227f00a62"
|
||||
"https://sketchfab.com/3d-models/leviathan-quirky-series-002200e1db2c461fbcaa8d2fdac2d766"
|
||||
"https://sketchfab.com/3d-models/pegasus-quirky-series-a4488ae7a2d2405c927a50f5a8b2d6bb"
|
||||
"https://sketchfab.com/3d-models/phoenix-quirky-series-1f0a01247b78441ab5b9cf8e9711e78e"
|
||||
"https://sketchfab.com/3d-models/wyvern-quirky-series-7baad217325a45b4877514b3f5924be9"
|
||||
)
|
||||
|
||||
for i in $t; do
|
||||
name=`echo $i|cut -d / -f 5|cut -d - -f 1`
|
||||
tt=`curl -sL $i|tr ' ' '\n' |grep .jpeg|cut -d '"' -f 2`
|
||||
normal=`echo $tt|awk "NR==1"`
|
||||
min=`echo $tt|awk "NR==2"`
|
||||
if [ ! -f $name.jpeg ];then
|
||||
curl -sL $normal -o $name.jpeg
|
||||
fi
|
||||
if [ ! -f ${name}-min.jpeg ];then
|
||||
#curl -sL $min -o ${name}-min.jpeg
|
||||
fi
|
||||
array+=(`echo $tt|sed "1,2d"|cut -d ";" -f 2|cut -d '&' -f 1|tr '\n' ' '`)
|
||||
echo $name
|
||||
for ((i=1; i<=$#array; i++)); do
|
||||
#echo "Index: $i, Value: ${array[$i]}"
|
||||
#curl -sL ${array[$i]} -o ${name}-${i}.jpeg
|
||||
done
|
||||
done
|
||||
}
|
||||
|
||||
handle_yui=yui.syui.ai
|
||||
did_yui=did:plc:4hqjfn7m6n5hno3doamuhgef
|
||||
token_yui=`cat ~/.config/ai/token.json|jq -r .accessJwt`
|
||||
host=bsky.social
|
||||
|
||||
case $OSTYPE in
|
||||
darwin*)
|
||||
day=`gdate --iso-8601=seconds`
|
||||
;;
|
||||
*)
|
||||
day=`date --iso-8601=seconds`
|
||||
;;
|
||||
esac
|
||||
|
||||
function create_game_character() {
|
||||
t=(
|
||||
ai
|
||||
chinese
|
||||
kirin
|
||||
leviathan
|
||||
phoenix
|
||||
wyvern
|
||||
cerberus
|
||||
dragon
|
||||
kitsune
|
||||
pegasus
|
||||
)
|
||||
|
||||
for ((i=1; i<=$#t; i++)); do
|
||||
created=2001-01-01T00:00:00+09:00
|
||||
col=ai.syui.game.character
|
||||
req=com.atproto.repo.getRecord
|
||||
url=https://$host/xrpc/$req
|
||||
|
||||
id=$i
|
||||
name=${t[$i]}
|
||||
chara=$name
|
||||
rkey=$chara
|
||||
repo=$did_yui
|
||||
json="{\"collection\":\"$col\", \"rkey\":\"$rkey\", \"repo\":\"$repo\"}"
|
||||
if [ $((RANDOM % 2)) -eq 0 ];then
|
||||
gender=male
|
||||
else
|
||||
gender=female
|
||||
fi
|
||||
|
||||
case $name in
|
||||
ai)
|
||||
gender=none
|
||||
group=origin
|
||||
season=0
|
||||
;;
|
||||
chinese|dragon|cerberus|pegasus|leviathan)
|
||||
gender=male
|
||||
group=fantasy
|
||||
season=1
|
||||
;;
|
||||
kitsune|phoenix|kirin|wyvern)
|
||||
gender=female
|
||||
group=fantasy
|
||||
season=1
|
||||
;;
|
||||
*)
|
||||
continue ;;
|
||||
esac
|
||||
|
||||
jj=`curl -sL "$url?repo=$repo&collection=$col&rkey=$rkey"`
|
||||
|
||||
link=`echo $jj|jq -r '.value.embed.external.thumb.ref.[]'`
|
||||
size=`echo $jj|jq -r .value.embed.external.thumb.size`
|
||||
mtype=`echo $jj|jq -r .value.embed.external.thumb.mimeType`
|
||||
echo $name
|
||||
echo $gender
|
||||
echo https://cdn.bsky.app/img/feed_thumbnail/plain/did:plc:4hqjfn7m6n5hno3doamuhgef/$link
|
||||
|
||||
## upload img
|
||||
#if [ -f ./${name}.jpeg ];then
|
||||
# jj=`ai img-upload ./${name}.jpeg`
|
||||
#elif [ -f ./${name}.png ];then
|
||||
# jj=`ai img-upload ./${name}.png`
|
||||
#fi
|
||||
#link=`echo $jj|jq -r ".blob.ref.[]"`
|
||||
#size=`echo $jj|jq -r .blob.size`
|
||||
#mtype=`echo $jj|jq -r .blob.mimeType`
|
||||
|
||||
req=com.atproto.repo.putRecord
|
||||
url=https://$host/xrpc/$req
|
||||
|
||||
nickname=$name
|
||||
fullname=$name
|
||||
uri=at://${did_yui}/$col/$chara
|
||||
|
||||
|
||||
json="{
|
||||
\"repo\": \"$handle_yui\",
|
||||
\"did\": \"$did_yui\",
|
||||
\"collection\": \"$col\",
|
||||
\"rkey\": \"$chara\",
|
||||
\"record\": {
|
||||
\"id\": $id,
|
||||
\"name\": \"$name\",
|
||||
\"fullname\": \"$fullname\",
|
||||
\"nickname\": \"$nickname\",
|
||||
\"gender\": \"$gender\",
|
||||
\"season\": $season,
|
||||
\"group\": \"$group\",
|
||||
\"embed\": {
|
||||
\"\$type\": \"app.bsky.embed.external\",
|
||||
\"external\": {
|
||||
\"uri\": \"$uri\",
|
||||
\"thumb\": {
|
||||
\"\$type\": \"blob\",
|
||||
\"ref\": {
|
||||
\"\$link\": \"$link\"
|
||||
},
|
||||
\"mimeType\": \"$mtype\",
|
||||
\"size\": $size
|
||||
} } }, \"createdAt\": \"$created\", \"updatedAt\": \"$day\" } }"
|
||||
|
||||
if echo $json|jq . ;then
|
||||
curl -sL -X POST -H "Content-Type: application/json" -H "Authorization: Bearer $token_yui" -d $json $url
|
||||
fi
|
||||
done
|
||||
|
||||
}
|
||||
|
||||
#download_character_icon
|
||||
create_game_character
|
||||
|
BIN
verse/img/fantasy.png
Normal file
After Width: | Height: | Size: 709 KiB |
BIN
verse/img/mode_ai.jpeg
Normal file
After Width: | Height: | Size: 1.2 MiB |
BIN
verse/img/shinka.png
Normal file
After Width: | Height: | Size: 327 KiB |