add item
BIN
item/card/0.png
Normal file
After Width: | Height: | Size: 44 KiB |
BIN
item/card/0.webp
Normal file
After Width: | Height: | Size: 10 KiB |
BIN
item/card/1.png
Normal file
After Width: | Height: | Size: 544 KiB |
BIN
item/card/1.webp
Normal file
After Width: | Height: | Size: 69 KiB |
BIN
item/card/10.png
Normal file
After Width: | Height: | Size: 933 KiB |
BIN
item/card/10.webp
Normal file
After Width: | Height: | Size: 160 KiB |
BIN
item/card/11.png
Normal file
After Width: | Height: | Size: 688 KiB |
BIN
item/card/11.webp
Normal file
After Width: | Height: | Size: 136 KiB |
BIN
item/card/12.png
Normal file
After Width: | Height: | Size: 516 KiB |
BIN
item/card/12.webp
Normal file
After Width: | Height: | Size: 60 KiB |
BIN
item/card/13.png
Normal file
After Width: | Height: | Size: 324 KiB |
BIN
item/card/13.webp
Normal file
After Width: | Height: | Size: 105 KiB |
BIN
item/card/135.png
Normal file
After Width: | Height: | Size: 38 KiB |
BIN
item/card/135.webp
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
item/card/136.mp4
Normal file
BIN
item/card/136.png
Normal file
After Width: | Height: | Size: 2.6 MiB |
BIN
item/card/136.webp
Normal file
After Width: | Height: | Size: 4.4 MiB |
BIN
item/card/14.png
Normal file
After Width: | Height: | Size: 462 KiB |
BIN
item/card/14.webp
Normal file
After Width: | Height: | Size: 109 KiB |
BIN
item/card/2.png
Normal file
After Width: | Height: | Size: 361 KiB |
BIN
item/card/2.webp
Normal file
After Width: | Height: | Size: 39 KiB |
BIN
item/card/3.png
Normal file
After Width: | Height: | Size: 683 KiB |
BIN
item/card/3.webp
Normal file
After Width: | Height: | Size: 94 KiB |
BIN
item/card/4.png
Normal file
After Width: | Height: | Size: 805 KiB |
BIN
item/card/4.webp
Normal file
After Width: | Height: | Size: 94 KiB |
BIN
item/card/5.png
Normal file
After Width: | Height: | Size: 402 KiB |
BIN
item/card/5.webp
Normal file
After Width: | Height: | Size: 81 KiB |
BIN
item/card/6.png
Normal file
After Width: | Height: | Size: 476 KiB |
BIN
item/card/6.webp
Normal file
After Width: | Height: | Size: 104 KiB |
BIN
item/card/7.png
Normal file
After Width: | Height: | Size: 713 KiB |
BIN
item/card/7.webp
Normal file
After Width: | Height: | Size: 90 KiB |
BIN
item/card/8.png
Normal file
After Width: | Height: | Size: 330 KiB |
BIN
item/card/8.webp
Normal file
After Width: | Height: | Size: 51 KiB |
BIN
item/card/9.png
Normal file
After Width: | Height: | Size: 680 KiB |
BIN
item/card/9.webp
Normal file
After Width: | Height: | Size: 103 KiB |
38
item/card/readme.md
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
# card
|
||||||
|
|
||||||
|
カードの仕様を決定します。
|
||||||
|
|
||||||
|
基本的に`3:4`の`1620x2160`で生成していましたが、`4:5`の`1080x1350`で生成することにしました。これはwindows動画編集が4:5にしか対応していないからです。`.mov`から動画編集で`.mp4`に変換し、それを`.webp`にします。
|
||||||
|
|
||||||
|
comfyuiの動画生成はカードの大きさではなかなか思うような動画が作れませんでした。やはり`1920x1080(1080p)`からの生成が最適でした。
|
||||||
|
|
||||||
|
- [16:9] 1920x1080 (1080p)
|
||||||
|
- [16:9] 1280×720 (720p)
|
||||||
|
- [16:9] 854x480 (480p)
|
||||||
|
- [4:3] 2160x1620
|
||||||
|
- [4:3] 1440x1080
|
||||||
|
- [4:3] 1024×768
|
||||||
|
- [4:3] 640×480
|
||||||
|
- [4:5] 2025x1620
|
||||||
|
- [4:5] 1536x2048
|
||||||
|
- [4:5] 1080x1350
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ magick convert -resize 480x -quality 100 4.png 4.webp
|
||||||
|
$ magick convert -quality 100 1.png 1.webp
|
||||||
|
|
||||||
|
$ magick convert -size 1620x2160 xc:white 1080p.png
|
||||||
|
$ magick convert -resize 1080x -quality 100 1.png 1.webp
|
||||||
|
```
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ ffmpeg -i 4.mp4 -vf "fps=15,setpts=PTS/4" -c:v libwebp -loop 1 -quality 100 4.webp
|
||||||
|
```
|
||||||
|
|
||||||
|
## list
|
||||||
|
|
||||||
|
<img src="https://git.syui.ai/ai/ai/raw/branch/main/card/1.webp" width="200px">
|
||||||
|
<img src="https://git.syui.ai/ai/ai/raw/branch/main/card/2.webp" width="200px">
|
||||||
|
<img src="https://git.syui.ai/ai/ai/raw/branch/main/card/3.webp" width="200px">
|
||||||
|
<img src="https://git.syui.ai/ai/ai/raw/branch/main/card/4.webp" width="200px">
|
||||||
|
|
@ -4,6 +4,7 @@ d=${0:a:h}
|
|||||||
|
|
||||||
source $d/src/tag.zsh
|
source $d/src/tag.zsh
|
||||||
source $d/src/func.zsh
|
source $d/src/func.zsh
|
||||||
|
source $d/src/ue.zsh
|
||||||
source $d/src/ai/syui/game/character.zsh
|
source $d/src/ai/syui/game/character.zsh
|
||||||
source $d/src/is/syu/main.zsh
|
source $d/src/is/syu/main.zsh
|
||||||
|
|
||||||
@ -63,6 +64,12 @@ case $1 in
|
|||||||
self-col)
|
self-col)
|
||||||
self-col $2
|
self-col $2
|
||||||
;;
|
;;
|
||||||
|
ue-system)
|
||||||
|
ue-system
|
||||||
|
;;
|
||||||
|
ue-user)
|
||||||
|
ue-user $2
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
echo "${help[@]}"
|
echo "${help[@]}"
|
||||||
echo "${host[@]}"
|
echo "${host[@]}"
|
||||||
|
@ -1,33 +1,3 @@
|
|||||||
character=(
|
|
||||||
ai
|
|
||||||
manny
|
|
||||||
quinn
|
|
||||||
chinese
|
|
||||||
kirin
|
|
||||||
leviathan
|
|
||||||
phoenix
|
|
||||||
wyvern
|
|
||||||
cerberus
|
|
||||||
dragon
|
|
||||||
kitsune
|
|
||||||
pegasus
|
|
||||||
)
|
|
||||||
|
|
||||||
img=(
|
|
||||||
bafkreie34pjuc6coenzcdwrgrh4fbacq7bkhsz263g5vpbsqxwaz37kkwy
|
|
||||||
bafkreie34pjuc6coenzcdwrgrh4fbacq7bkhsz263g5vpbsqxwaz37kkwy
|
|
||||||
bafkreie34pjuc6coenzcdwrgrh4fbacq7bkhsz263g5vpbsqxwaz37kkwy
|
|
||||||
bafkreidlealfybajqzwv5eoz4jshnsijc2vnktlhpw4ph47krwj6aigqby
|
|
||||||
bafkreiegpqedlrfa4ljhssdnkrr5hyd5huy2xhh2zszj5wq2wuuzejggmq
|
|
||||||
bafkreig6vszkx3c4dcortjwfsz6sa6zwqgj7zpxj4lxfrrkwql4xhiu5ou
|
|
||||||
bafkreich7fsumke2yvumvixkruonzrcevk3f6g2cntzfwdn4n2c2vox5dm
|
|
||||||
bafkreiacjvagsekhiiljz3j237b6klrt6pkptxljt7kltprgg5276gv25q
|
|
||||||
bafkreihpni4lp55jysalcntulzal5rbhidtbseanlucpyucagzxmv6xj24
|
|
||||||
bafkreia3huw2gdenqatoobx3hcft74chced46bw4znfgepo5aenegobkri
|
|
||||||
bafkreidy74aieb6ie646xhosginox5zbnbnrtd76cnt4pbn73hrxgfnple
|
|
||||||
bafkreifnbfj27fr6nv7qeqqmwdibf7qrw4lauvzoknw5hexbifmwqt6kmq
|
|
||||||
)
|
|
||||||
|
|
||||||
function download_character_icon(){
|
function download_character_icon(){
|
||||||
|
|
||||||
t=(
|
t=(
|
||||||
|
@ -38,3 +38,33 @@ github=(
|
|||||||
)
|
)
|
||||||
tag=( at bsky bsync pds bgs plc ozone feed jetstream social-app oauth )
|
tag=( at bsky bsync pds bgs plc ozone feed jetstream social-app oauth )
|
||||||
#pds_list=(bsky.social syu.is boobee.blue socl.is )
|
#pds_list=(bsky.social syu.is boobee.blue socl.is )
|
||||||
|
|
||||||
|
character=(
|
||||||
|
ai
|
||||||
|
manny
|
||||||
|
quinn
|
||||||
|
chinese
|
||||||
|
kirin
|
||||||
|
leviathan
|
||||||
|
phoenix
|
||||||
|
wyvern
|
||||||
|
cerberus
|
||||||
|
dragon
|
||||||
|
kitsune
|
||||||
|
pegasus
|
||||||
|
)
|
||||||
|
|
||||||
|
character_img=(
|
||||||
|
bafkreie34pjuc6coenzcdwrgrh4fbacq7bkhsz263g5vpbsqxwaz37kkwy
|
||||||
|
bafkreie34pjuc6coenzcdwrgrh4fbacq7bkhsz263g5vpbsqxwaz37kkwy
|
||||||
|
bafkreie34pjuc6coenzcdwrgrh4fbacq7bkhsz263g5vpbsqxwaz37kkwy
|
||||||
|
bafkreidlealfybajqzwv5eoz4jshnsijc2vnktlhpw4ph47krwj6aigqby
|
||||||
|
bafkreiegpqedlrfa4ljhssdnkrr5hyd5huy2xhh2zszj5wq2wuuzejggmq
|
||||||
|
bafkreig6vszkx3c4dcortjwfsz6sa6zwqgj7zpxj4lxfrrkwql4xhiu5ou
|
||||||
|
bafkreich7fsumke2yvumvixkruonzrcevk3f6g2cntzfwdn4n2c2vox5dm
|
||||||
|
bafkreiacjvagsekhiiljz3j237b6klrt6pkptxljt7kltprgg5276gv25q
|
||||||
|
bafkreihpni4lp55jysalcntulzal5rbhidtbseanlucpyucagzxmv6xj24
|
||||||
|
bafkreia3huw2gdenqatoobx3hcft74chced46bw4znfgepo5aenegobkri
|
||||||
|
bafkreidy74aieb6ie646xhosginox5zbnbnrtd76cnt4pbn73hrxgfnple
|
||||||
|
bafkreifnbfj27fr6nv7qeqqmwdibf7qrw4lauvzoknw5hexbifmwqt6kmq
|
||||||
|
)
|
||||||
|
193
scpt/src/ue.zsh
Executable file
@ -0,0 +1,193 @@
|
|||||||
|
case $OSTYPE in
|
||||||
|
darwin*)
|
||||||
|
day=`gdate --iso-8601=seconds`
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
day=`date --iso-8601=seconds`
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
function get_game_user() {
|
||||||
|
rkey=$did.$pds
|
||||||
|
pds=bsky.social
|
||||||
|
if [ "$1" = "syui" ] || [ "$1" = "ai" ];then
|
||||||
|
rkey=$1
|
||||||
|
fi
|
||||||
|
req=com.atproto.repo.getRecord
|
||||||
|
url="https://$pds/xrpc/$req?rkey=$rkey&repo=$did_yui&collection=ai.syui.game"
|
||||||
|
curl -sL $url|jq .
|
||||||
|
}
|
||||||
|
|
||||||
|
function delete_game_user() {
|
||||||
|
rkey=$2
|
||||||
|
if [ -z "$1" ];then
|
||||||
|
col=ai.syui.game
|
||||||
|
else
|
||||||
|
col=$1
|
||||||
|
fi
|
||||||
|
req=com.atproto.repo.DeleteRecord
|
||||||
|
url=https://$pds/xrpc/$req
|
||||||
|
repo=$did
|
||||||
|
#repo=did:plc:6qyecktefllvenje24fcxnie
|
||||||
|
json="{\"collection\":\"$col\", \"rkey\":\"$rkey\", \"repo\":\"$repo\"}"
|
||||||
|
echo $json
|
||||||
|
curl -sL -X POST -H "Content-Type: application/json" -H "Authorization: Bearer $token" -d $json $url
|
||||||
|
}
|
||||||
|
|
||||||
|
function ue-user() {
|
||||||
|
col=ai.syui.game
|
||||||
|
rkey=$1
|
||||||
|
handle_yui=$handle
|
||||||
|
did_yui=$did
|
||||||
|
pds=`cat $f|jq -r ".didDoc.service.[].serviceEndpoint"|cut -d / -f 3`
|
||||||
|
if [ "$pds" != "syu.is" ];then
|
||||||
|
pds=bsky.social
|
||||||
|
fi
|
||||||
|
version=4
|
||||||
|
#rkey=syui
|
||||||
|
req=com.atproto.repo.putRecord
|
||||||
|
url=https://$pds/xrpc/$req
|
||||||
|
|
||||||
|
cname=dragon
|
||||||
|
|
||||||
|
if [ "$rkey" = "ai" ];then
|
||||||
|
cname=$rkey
|
||||||
|
gender=none
|
||||||
|
fi
|
||||||
|
if [ "$rkey" = "syui" ];then
|
||||||
|
cname=chinese
|
||||||
|
did=$did_syui
|
||||||
|
handle=syui.ai
|
||||||
|
gender=male
|
||||||
|
fi
|
||||||
|
if [ "$rkey" = "self" ];then
|
||||||
|
cname=manny
|
||||||
|
unset did handle gender
|
||||||
|
pds=bsky.social
|
||||||
|
plc=plc.directory
|
||||||
|
fi
|
||||||
|
season=1
|
||||||
|
group=test
|
||||||
|
lv=1
|
||||||
|
hp=1
|
||||||
|
exp=0
|
||||||
|
rare=0
|
||||||
|
mode=0
|
||||||
|
attack=0
|
||||||
|
attack_post=0
|
||||||
|
critical=0
|
||||||
|
critical_d=0
|
||||||
|
card=0
|
||||||
|
weapon=0
|
||||||
|
coin=0
|
||||||
|
count=0
|
||||||
|
|
||||||
|
case $cname in
|
||||||
|
ai)
|
||||||
|
group=origin
|
||||||
|
season=0
|
||||||
|
mode=2
|
||||||
|
;;
|
||||||
|
manny|quinn)
|
||||||
|
group=test
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
group=fantasy
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
json_item="
|
||||||
|
\"coin\": [{\"id\": 0, \"cp\": 0, \"rare\": 0, \"count\": 0}],
|
||||||
|
\"card\": [{\"id\": 0, \"cp\": 0, \"rare\": 0, \"count\": 0}],
|
||||||
|
\"weapon\": [{\"id\": 0, \"cp\": 0, \"rare\": 0, \"count\": 0}]
|
||||||
|
"
|
||||||
|
|
||||||
|
json="
|
||||||
|
{
|
||||||
|
\"repo\": \"$handle_yui\",
|
||||||
|
\"did\": \"$did_yui\",
|
||||||
|
\"collection\": \"$col\",
|
||||||
|
\"rkey\": \"$rkey\",
|
||||||
|
\"record\": {
|
||||||
|
\"version\": $version,
|
||||||
|
\"did\": \"$did\",
|
||||||
|
\"handle\": \"$handle\",
|
||||||
|
\"plc\": \"$plc\",
|
||||||
|
\"pds\": \"$pds\",
|
||||||
|
\"player\": {
|
||||||
|
\"limit\": false,
|
||||||
|
\"login\": false,
|
||||||
|
\"ten\": 0,
|
||||||
|
\"gender\": \"$gender\"
|
||||||
|
},
|
||||||
|
\"character\": {
|
||||||
|
$json
|
||||||
|
},
|
||||||
|
\"item\": {
|
||||||
|
$json_item
|
||||||
|
},
|
||||||
|
\"createdAt\": \"${created}\",
|
||||||
|
\"updatedAt\": \"${created}\"
|
||||||
|
}
|
||||||
|
}"
|
||||||
|
|
||||||
|
if echo $json|jq . ;then
|
||||||
|
echo y
|
||||||
|
read y
|
||||||
|
if [ "y" = "$y" ];then
|
||||||
|
t=`curl -sL -X POST -H "Content-Type: application/json" -H "Authorization: Bearer $token" -d $json $url`
|
||||||
|
echo $t|jq .
|
||||||
|
#f=~/ai/ue/json/v${version}_${rkey}.json
|
||||||
|
#if [ -f $f ];then
|
||||||
|
# get_game_user $rkey >! $f
|
||||||
|
#fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function ue-system() {
|
||||||
|
col=ai.syui.system
|
||||||
|
rkey=self
|
||||||
|
did=$did
|
||||||
|
handle=$handle
|
||||||
|
pds=`cat $f|jq -r ".didDoc.service.[].serviceEndpoint"|cut -d / -f 3`
|
||||||
|
if [ "$pds" != "syu.is" ];then
|
||||||
|
pds=bsky.social
|
||||||
|
fi
|
||||||
|
version=1
|
||||||
|
#rkey=syui
|
||||||
|
req=com.atproto.repo.putRecord
|
||||||
|
url=https://$pds/xrpc/$req
|
||||||
|
imgurl=https://git.syui.ai/ai/ai/raw/branch/main/img/item/card
|
||||||
|
json_card=" \"id\": $id, \"name\": \"$name\", \"img\": \"${imgurl}/${id}.webp\""
|
||||||
|
json_card=`curl -sL https://git.syui.ai/ai/ai/raw/branch/main/json/card.json|jq ".[]"`
|
||||||
|
json_weapon=`curl -sL https://git.syui.ai/ai/ai/raw/branch/main/json/weapon.json|jq ".[]"`
|
||||||
|
json_system=`curl -sL https://git.syui.ai/ai/ai/raw/branch/main/json/system.json|jq ".[]"`
|
||||||
|
json_character=`curl -sL https://git.syui.ai/ai/ai/raw/branch/main/json/character.json|jq ".[]"`
|
||||||
|
json_ability=`curl -sL https://git.syui.ai/ai/ai/raw/branch/main/json/ability.json|jq ".[]"`
|
||||||
|
json="
|
||||||
|
{
|
||||||
|
\"repo\": \"$handle\",
|
||||||
|
\"did\": \"$did\",
|
||||||
|
\"collection\": \"$col\",
|
||||||
|
\"rkey\": \"$rkey\",
|
||||||
|
\"record\": {
|
||||||
|
\"card\": ${json_card},
|
||||||
|
\"weapon\": ${json_weapon},
|
||||||
|
\"system\": ${json_system},
|
||||||
|
\"character\": ${json_character},
|
||||||
|
\"ability\": ${json_ability},
|
||||||
|
\"createdAt\": \"${created}\",
|
||||||
|
\"updatedAt\": \"${created}\"
|
||||||
|
}
|
||||||
|
}"
|
||||||
|
|
||||||
|
if echo $json|jq . ;then
|
||||||
|
echo y
|
||||||
|
read y
|
||||||
|
if [ "y" = "$y" ];then
|
||||||
|
t=`curl -sL -X POST -H "Content-Type: application/json" -H "Authorization: Bearer $token" -d $json $url`
|
||||||
|
echo $t|jq .
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|